Json反序列化字符串错误

本文关键字:错误 字符串 反序列化 Json | 更新日期: 2023-09-27 18:04:44

private void ExmpDatasave()
    {
        DataSet dataSet = new DataSet("dataSet");
         dataSet.Namespace = "NetFrameWork";
         DataTable table = new DataTable();
         DataColumn idColumn = new DataColumn("id", typeof(int));
         idColumn.AutoIncrement = true;
         DataColumn itemColumn = new DataColumn("item");
         table.Columns.Add(idColumn);
         table.Columns.Add(itemColumn);
        dataSet.Tables.Add(table);
        for (int i = 0; i < 2; i++)
        {
            DataRow newRow = table.NewRow();
            newRow["item"] = "item " + i;
            table.Rows.Add(newRow);
        }
        dataSet.AcceptChanges();
        string json = JsonConvert.SerializeObject(dataSet, Formatting.None);
         Helper.WriteToJson(json);
    }
    private void ExmpDataread()
    {
        using (StreamReader r = new StreamReader("exmp.json"))
        {
            string json = r.ReadToEnd();
            var myJSONString = json.ToString();
            DataSet dataSet = JsonConvert.DeserializeObject<DataSet>(json);
            DataTable dataTable = dataSet.Tables["Table1"];
            Console.WriteLine(dataTable.Rows.Count);
        }
    }

嘿,这是我的简短代码ExmpDatasave()是用来保存在json工作良好的整个数据;ExmpDataread给出错误:

读取数据集时意外结束。路径",第一行,位置78.

My json values "{'"Table1'":[{'"id'":0,'"item'":'"item 0'"},{'"id'":1,'"item'":'"item 1'"}]}"
请帮我弄清楚。提前谢谢你……

Json反序列化字符串错误

我确实遇到过这个问题,尽管我不够聪明,无法解决这个问题,但我能够解决它,我认为这是更好的。

我决定使用Newtonsoft.Json.Linq;得到类似的结果

            dynamic json = JsonConvert.DeserializeObject(reader.ReadToEnd());
            JObject js = JObject.Parse(json);
            Console.Writeline(js["Table1"].Count);

我不认为这是一个完整的答案,因为我从来没有能够弄清楚为什么它是给出错误的时候,一切都说它不应该是。但是我很高兴找到这条路径所以我希望它能有所帮助