SnakeYaml: экранирование символов новой строки в yaml

Я только что попробовал следующий фрагмент кода в заводной консоли.

import org.yaml.snakeyaml.Yaml
o = new Yaml().load("a: a\\nb")
o.a

и он возвращается

a\nb

вместо

a
b

Я следовал этому руководству.

Я думал, это баг, или я что-то не так делаю...


person opensas    schedule 25.02.2012    source источник


Ответы (1)


я это выяснил

Для экранирования значение должно быть заключено в двойные кавычки, например:

import org.yaml.snakeyaml.Yaml
o = new Yaml().load('a: "a\\nb"')
o.a

выход:

groovy> import org.yaml.snakeyaml.Yaml 
groovy> o = new Yaml().load('a: "a\\nb"') 
groovy> o.a 

Result: a
b
person opensas    schedule 25.02.2012