为什么我的C#json反序列化失败?
我反对使用stackoverflow.com网站中提到的所有流行的历史方法来解码json文件。然而,在我的情况下,他们都不起作用。 下面是我正在处理的json文件的一小部分:为什么我的C#json反序列化失败?,c#,json,C#,Json,我反对使用stackoverflow.com网站中提到的所有流行的历史方法来解码json文件。然而,在我的情况下,他们都不起作用。 下面是我正在处理的json文件的一小部分: [{ "lat": [ [-19.1415329], [-18.822279], [-18.672287] ], "lon": [ [135.673416], [135.547226], [135.566849] ] }] 您可以在此处看到完整的json文件: 请给我一些提示。我被困在这
[{
"lat": [
[-19.1415329],
[-18.822279],
[-18.672287]
],
"lon": [
[135.673416],
[135.547226],
[135.566849]
]
}]
您可以在此处看到完整的json文件:
请给我一些提示。我被困在这里有一段时间了。
谢谢你们 您得到的Json是一个
RootObject
数组,因此必须进行更改
oRootObject = oJS.Deserialize<RootObject>(jsonText);
oRootObject=oJS.Deserialize(jsonText);
到
oRootObject=oJS.Deserialize(jsonText);
之后,在oRootObject[0]中,您将对json进行反序列化如何处理
oJS。反序列化(jsonText)
?json snippt看起来像一个RootObject数组。您还可以使用错误的具体构成来获得提示?请您向我们展示一些示例输出(如果有的话)?如果没有输出,您能告诉我们错误吗?我这样问是因为我们中的一些人无法在工作中运行您的代码。此外,我甚至无法访问jsonFtp
/您文章中的链接。这里无法访问它。RootObject是使用json2csharp生成的类。我所做的就是在那个网站上发布FTP链接,它是自动生成的。谢谢你们!祝你周末愉快谢谢。它起作用了:var oRootObject=(RootObject[])oJS.Deserialize(jsonText)
private void getJson(string url)
{
var req = (FtpWebRequest)WebRequest.Create(url);
using (Stream stream = req.GetResponse().GetResponseStream())
{
StreamReader reader = new StreamReader(stream);
string jsonText = reader.ReadToEnd();
var serializer = new DataContractJsonSerializer(typeof(RootObject));
RootObject library = (RootObject)serializer.ReadObject(stream);
MessageBox.Show("OK");
}
}
oRootObject = oJS.Deserialize<RootObject>(jsonText);
oRootObject = oJS.Deserialize<RootObject[]>(jsonText);