c# - JSON.NET:反序列化和合并 JSON 字符串

标签 c# .net json json.net json-deserialization

我有一个来自包含多个 JSON 对象的文件的 JSON 字符串,我需要将其反序列化为一个合并的 C# 对象。

File1.json

{
   "manage_employees_section_title": 
    {
        "value": "Manage employees",
        "description": "The mange employees section title"
    }
}
{
   "manage_operations_section_title": 
    {
        "value": "Manage operations",
        "description": "The mange operations section title"
    }
}

即使文件中有多个 JSON 对象,我真的很想从反序列化(或其他方式)中返回一个合并的 C# 对象,就像它来自这样的字符串:

{
   "manage_employees_section_title": 
    {
        "value": "Manage employees",
        "description": "The mange employees section title"
    },
   "manage_operations_section_title": 
    {
        "value": "Manage operations",
        "description": "The mange operations section title"
    }
}

JSON.NET 或任何其他工具是否可行?

非常感谢你们..

最佳答案

第一个代码块isn't valid JSON .如果您希望 JSON 库处理您的输入,您首先需要将其转换为有效的 JSON。

如果您的输入总是看起来像那样,您可以使用正则表达式找到 }\r\n\{ 并将其替换为逗号,然后将生成您的第二个例子:

var output = Regex.Replace(input, "\r\n}\r\n{", ",");

使用您提供的第一个示例的输入,现在生成第二个示例作为输出,它是有效的 JSON 并且可以适本地反序列化。

关于c# - JSON.NET:反序列化和合并 JSON 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29015056/

相关文章:

c# - 在 .NET 中调用基类中的测试方法

c# - SQL数据库可以溯源吗?

c# - 我想重构我的加载游戏脚本

c# - 使用 LINQ 对结果 "fairly"进行分组

.net - 多线程写入,从队列中读取一个线程,线程安全

Java 解析 Json 与具有不同对象类型的数组(Gson 或 Jackson 等)

c# - 通过 Internet 订阅 MSMQ

java - 编写长测试方法名称来描述测试与在代码文档中使用

patternProperties 的 Json 模式示例

c - Jansson lib 解析器