2016-08-19 92 views
0

我需要更改JsonSerializer缩进以使用制表符而不是2个空格的方式......这可能吗?有没有办法使用Json.Net JsonSerializer自定义缩进字符?

我可以按照here所述转动缩进。

我的代码看起来是这样的:

var jsonSerializer = new JsonSerializer 
{ 
    Formatting = Newtonsoft.Json.Formatting.Indented 
}; 

using (var fs = File.Create(fileName)) 
using (var sw = new StreamWriter(fs)) 
{ 
    jsonSerializer.Serialize(sw, data); 
} 

注:这是一个不同的问题this一个介绍与JsonTextWriter的方法 - 我想如果可能的JsonSerializer做到这一点。

回答

2

结账a custom JsonWriter

using (var fs = File.Create("data.json")) 
using (var sw = new StreamWriter(fs)) 
using (var jtw = new JsonTextWriter(sw) { 
    Formatting= Formatting.Indented, 
    Indentation=3, 
    IndentChar = '\t'}) { 
    (new JsonSerializer()).Serialize(jtw, data); 
} 
+0

谢谢你的工作。 – JaySeeAre

相关问题