【问题标题】:How to Add New Line Feed while creating JSON file via VB.NET?如何在通过 VB.NET 创建 JSON 文件时添加新的换行符?
【发布时间】:2019-10-12 06:39:13
【问题描述】:

我正在使用 VB.NET 创建 Json 文件。
一切正常。 Json 输出代码很好。
问题是对象、数组对象等之间没有换行

我在 VB.NET 中的代码如下。

Dim mainlist As New ModJson

mainlist.Version = "123"

Dim billlist As New List(Of ModJson.Billlst)
Dim bill As New ModJson.Billlst
bill.b1 = "B1" & Environment.NewLine '----Tried this
bill.b2 = "B2" & vbCrLf '----- This one too.
bill.b3 = "B3"
billlist.Add(bill)
Dim litemlist As New List(Of ModJson.ItemLst)
For i As Integer = 0 To 1
Dim item As New ModJson.ItemLst
    item.i1 = 0
    item.i2 = 1
    litemlist.Add(item)
Next
bill.itemList = litemlist
mainlist.billLists = billlist
Dim output As String = Newtonsoft.Json.JsonConvert.SerializeObject(mainlist)

我的输出是这样的:

{"Version":"123","billLists":[{"b1":"B1\r\n","b2":"B2\r\n","b3":"B3","itemList":[{"i1":0,"i2":1}]}]}

输出是正确的。只是没有换行。

我想要这样的东西:

{
  "Version": "123",
  "billLists": [
    {
      "itemList": [
        {
          "i1": 0,
          "i2": 1
        }
      ],
      "b1": "B1\r\n",
      "b2": "B2\r\n",
      "b3": "B3"
    }
  ]
}

我阅读了很多帖子,但找不到一篇解释我如何添加换行符的帖子。

【问题讨论】:

    标签: json vb.net json.net formatting


    【解决方案1】:

    SerializeObject 有一个重载方法,我们可以在其中提供所需的格式,如下所示。

    string json = JsonConvert.SerializeObject(mainlist, Formatting.Indented);
    

    【讨论】:

    • 非常感谢你。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-26
    • 1970-01-01
    相关资源
    最近更新 更多