Yaml-Cpp узнает, указано ли значение - PullRequest
0 голосов
/ 26 февраля 2019

Я читаю в файле yaml с большой картой, которая выглядит следующим образом:

test_value: '123'
test_value2: 123
test_value3: 1.0
test_value4: true
test_value5: 'some information'

Я могу разобрать его, чтобы получить значения, но я хочу знать тип значения.Я указал, что double всегда пишется как double, а boolean всегда true или false, а также что строки должны всегда заключаться в кавычки.

Теперь проблема в том, что если я захочу снова прочитать его с помощью yaml-cpp, я получу не «123», а 123, который я затем интерпретирую как int, а не как строку, которая должна быть.

Есть ли какая-то возможность, которую я упустил, чтобы выяснить, есть ли где-нибудь цитаты вокруг нее?

1 Ответ

0 голосов
/ 26 февраля 2019

Я нашел способ выяснить, цитируется ли он.В узле есть тег, который вы можете получить с помощью node.Tag (), в моем случае использования он вернет мне a!или?со времен!возвращается только в предыдущей строке, это может быть получено следующим образом.

...