检查JSON和XML是否有效? C#

时间:2012-01-07 02:56:59

标签: c# xml json json.net

我正在使用newtonsoft json.net http://json.codeplex.com/,我想知道......

如何验证json和xml是有效的json / xml。

我该如何验证?

2 个答案:

答案 0 :(得分:7)

在服务器端或客户端验证json的位置。 假设您想在服务器端执行此操作,请尝试反序列化json字符串。如果它坏了,那么它不是一个有效的json。使用JavaScriptSerializer进行反序列化

var serializer = new JavaScriptSerializer();
var result = serializer.Deserialize<Dictionary<string, object>>(json);

答案 1 :(得分:1)

如果您使用的是JSON.net软件,则可以像Anand所说的那样完成。只需反序列化JSON字符串,如果它中断或错误,则它不是有效的JSON结构。现在,如果您正在尝试执行http://jsonlint.com/之类的操作,那么您可能超出了我们可以在论坛上帮助您的范围。如果你想检查它是否有错误,只需在C#中使用以下代码,其中result是JSON字符串:

var root = JsonConvert.DeserializeObject<RootObject>(result);

你要从JSON字符串反序列化的信息必须有一个类似于的RootObject类:

public class RootObject
{
    // You would need to create items here to store each of the objects' information in the JSON file.
    // For example:
    public string itemName { get; set; }
    public int itemID { get; set; }
}

现在,假设您知道应该在JSON文件中的信息。否则,这本身就是一个完整的程序。