2016-08-19 94 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

相關問題