使用MemoryStream序列化为JSON,同时添加c#换行符

本文关键字:添加 换行符 MemoryStream 序列化 JSON 使用 | 更新日期: 2023-09-27 17:52:40

我必须将一些c#类数据序列化为JSON。为此,我使用MemoryStream和DataContractJsonSerializer。

MemoryStream stream1 = new MemoryStream();
DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(Person));
ser.WriteObject(stream1, p);
using (FileStream file = new FileStream("Write.json", FileMode.Create, FileAccess.ReadWrite))
{
    stream1.Position = 0;
    stream1.Read(stream1.ToArray(), 0, (int)stream1.Length);
    file.Write(stream1.ToArray(), 0, stream1.ToArray().Length);
    stream1.Close();
    file.Close();
}

像这样运行应用程序会产生如下输出:

{"age":42,"arr":[{},{},{}],"name":"John","value":null,"w":{}}

但是,对于我的任务,我必须生成一个JSON文件,其中每个条目都在新行中输入。例子:

"SomeData":[
{
    "SomeData" : "Value",
    "SomeData" : 0,
    "SomeData": [
        {
            "SomeData" : "Value",
            "SomeData" : 0
            ]
        }
    ]
}, etc. etc.

我该怎么做呢?提前感谢!

使用MemoryStream序列化为JSON,同时添加c#换行符

好的,如果你想这样做,只需添加在这个问题中回答的代码。

问题