[英]convert json string with “\” to dictionary in c#
我想将以下json字符串转换为包含键值对的dicionaly
["\"TransferDate\" : \"05/30/2014\",\"Location\" : \"013\",\"VendorName\" : \"fdgfg\",\"VendorName_Other\" : \"\",\"Add1\" : \"\",\"Add2\" : \"\",\"Add3\" : \"\",\"City\" : \"\",\"State\" : \"\",\"Zip\" : \"\",\"Vphone\" : \"\",\"Vfax\" : \"\",\"Amount\" : \"$0.00\",\"Description\" : \"\",\"Comments\" : \"\",\"RequestBy\" : \"a den\",\"RPhone\" : \"\",\"FullName\" : \"dfgfg\",\"APhone\" : \"\",\"ReturnAddress\" : \"\",\"itemdesc\" : \"\",\"amount\" : \"\",\"account\" : \"\",\"accdesc\" : \"\",\"comments\" : \"\",\"assetno\" : \"\",\"category\" : \"\",\"internalorder\" : \"\",\"uom\" : \"\",\"Mail Check\":\"0\"",""]
请建议我该怎么做,由于上面的字符串中包含“ \\”字符,因此我无法弄清楚。
Dictionary<string, string> values = JsonConvert.DeserializeObject<Dictionary<string, string>>(YourJson);
您必须使用Json.NET并从Package Manager控制台安装nuget软件包
安装包Newtonsoft.Json
并在cs文件中编写代码,如下所示
string str = "[" + "\"TransferDate\" : \"05/30/2014\",\"Location\" : \"013\",\"VendorName\" : \"fdgfg\",\"VendorName_Other\" : \"\",\"Add1\" : \"\",\"Add2\" : \"\",\"Add3\" : \"\",\"City\" : \"\",\"State\" : \"\",\"Zip\" : \"\",\"Vphone\" : \"\",\"Vfax\" : \"\",\"Amount\" : \"$0.00\",\"Description\" : \"\",\"Comments\" : \"\",\"RequestBy\" : \"a den\",\"RPhone\" : \"\",\"FullName\" : \"dfgfg\",\"APhone\" : \"\",\"ReturnAddress\" : \"\",\"itemdesc\" : \"\",\"amount\" : \"\",\"account\" : \"\",\"accdesc\" : \"\",\"comments\" : \"\",\"assetno\" : \"\",\"category\" : \"\",\"internalorder\" : \"\",\"uom\" : \"\",\"Mail Check\":\"0\"" + "]";
string json = str.Trim().Replace("[", "{").Replace("]", "}");
Dictionary<string, string> values = JsonConvert.DeserializeObject<Dictionary<string, string>>(json);
首先,在JSON字符串的开头和结尾添加closure
。 您现在已将其放入数组中。
现在您的json字符串将是
string str = "{ \"Location\" : \"013\",\"VendorName\" : \"fdgfg\",\"VendorName_Other\" : \"\",\"Add1\" : \"\" }";
我刚刚提取了您的JSON示例。
现在,只需添加以下代码行。
Dictionary<string, string> values = JsonConvert.DeserializeObject<Dictionary<string, string>>(str);
这应该为您完成工作。
希望能帮助到你
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.