2017-05-10 2 views
2

J'utilise yaml-cpp sur un pour une variété de choses sur mon projet. Maintenant, je veux écrire des données en format JSON. Puisque JSON est un sous-ensemble de YAML, au moins pour les fonctionnalités dont j'ai besoin, je comprends qu'il devrait être possible de définir des options dans yaml-cpp pour produire du JSON pur. Comment cela est-il fait?Emission de JSON avec yaml-cpp?

Répondre

3

yaml-cpp n'a pas directement le moyen de forcer la sortie compatible JSON, mais vous pouvez probablement l'émuler.

YAML:Emitter Emitter; 
emitter << YAML:: DoubleQuoted << YAML::Flow << /* rest of code */; 
+0

Cela semble fonctionner pour mon cas, JSON valide est émis. J'ai juste un suivi sur la question: Le résultat ci-dessus tout le JSON étant sur une longue ligne. Y a-t-il un moyen de l'avoir également en nouvelle ligne et indentation? – Jim

+0

Je ne pense pas. –

+0

Cela ne semble plus fonctionner, ou au moins sur YAML plus complexe. Je reçois tout sur des lignes différentes avec des tableaux et des objets de style YAML lorsque je fais une sortie de nœud complexe. – David