可以通过使用内置 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();
Run Code Online (Sandbox Code Playgroud)
我很惊讶这竟然如此有效!JSON 输出与其他基于 Web 的工具相同。
如果不需要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();
Run Code Online (Sandbox Code Playgroud)
您可以在此处检查两个有效的小提琴:
| 归档时间: |
|
| 查看次数: |
5440 次 |
| 最近记录: |