8

YAML ファイルと JSON の間で変換しようとしています。これは、情報を見つけるのが本当に困難でした。

4

2 に答える 2

11

Json.NET の機能が必要ない場合は、Serializer クラスを直接使用して JSON を出力することもできます。

// now convert the object to JSON. Simple!
var js = new Serializer(SerializationOptions.JsonCompatible);

var w = new StringWriter();
js.Serialize(w, o);
string jsonText = w.ToString();

ここで 2 つの動作フィドルを確認できます。

于 2015-05-22T09:36:43.727 に答える
3

組み込みの JSON ライブラリを YamlDotNet と共に使用することで、これを行うことができます。YamlDotNet のドキュメントでは明らかではありませんでしたが、かなり簡単な方法を見つけました。

// convert string/file to YAML object
var r = new StreamReader(filename); 
var deserializer = new Deserializer(namingConvention: new CamelCaseNamingConvention());
var yamlObject = deserializer.Deserialize(r);

// now convert the object to JSON. Simple!
Newtonsoft.Json.JsonSerializer js = new Newtonsoft.Json.JsonSerializer();

var w = new StringWriter();
js.Serialize(w, yamlObject);
string jsonText = w.ToString();

これがうまく機能したことに驚きました!JSON 出力は、他の Web ベースのツールと同じでした。

于 2015-05-21T04:55:03.753 に答える