Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我需要序列化json文件,其中包含xml_C#_.net_Json_Xml_Asp.net Core - Fatal编程技术网

C# 我需要序列化json文件,其中包含xml

C# 我需要序列化json文件,其中包含xml,c#,.net,json,xml,asp.net-core,C#,.net,Json,Xml,Asp.net Core,我有JSON,我需要反序列化它。JSON文件中包含XML。有什么建议吗 {"nt":0,"r":true,"o":[{"test":"20fgfgdfgdfAZ20AIgdg151","fddf":"ZregrIPgdffgfSgfg","d":"<DataPDU xmlns="urn:cma:stp:xsd:stp.1.0"> <Body> </AppHdr> <Document xmlns="urn:iso:"> .....

我有JSON,我需要反序列化它。JSON文件中包含XML。有什么建议吗

{"nt":0,"r":true,"o":[{"test":"20fgfgdfgdfAZ20AIgdg151","fddf":"ZregrIPgdffgfSgfg","d":"<DataPDU xmlns="urn:cma:stp:xsd:stp.1.0">
<Body>
</AppHdr>
<Document xmlns="urn:iso:">  
      ..... 
    </Document></Body>
</DataPDU>"}]}
{“nt”:0,“r”:true,“o”:[{“test”:“20FGDFGDFAZ20AIGDG151”,“fddf”:“ZregrIPgdffgfSgfg”,“d”:
..... 
"}]}

您的JSON字符串似乎无效。您在
o[0].d
或XML部分中有未被替换的引号。我已经提供了一个带有转义引号的JSON版本

{
    "nt": 0,
    "r": true,
    "o": [
         {
            "test": "20fgfgdfgdfAZ20AIgdg151",
            "fddf": "ZregrIPgdffgfSgfg",
            "d": "<DataPDU xmlns=\"urn:cma:stp:xsd:stp.1.0\"><Body></<Document xmlns=\"urn:iso:\">  ..... </Document></Body></DataPDU>"
         }
     ]
}

可以找到有关使用
System.Text.Json
命名空间的文档。

您的Json字符串似乎无效。您在
o[0].d
或XML部分中有未被替换的引号。我已经提供了一个带有转义引号的JSON版本

{
    "nt": 0,
    "r": true,
    "o": [
         {
            "test": "20fgfgdfgdfAZ20AIgdg151",
            "fddf": "ZregrIPgdffgfSgfg",
            "d": "<DataPDU xmlns=\"urn:cma:stp:xsd:stp.1.0\"><Body></<Document xmlns=\"urn:iso:\">  ..... </Document></Body></DataPDU>"
         }
     ]
}
可以找到有关使用
System.Text.Json
命名空间的文档

请注意,xml中的
必须更改为
\”
字符串中的
,理解代码将不起作用

使用System.Text.Json;
公共myJson()
{
字符串json=“”;
Rootobject jsonObject=JsonConvert.DeserializeObject(json);
}
公共类根对象
{
公共int nt{get;set;}
公共布尔r{get;set;}
公共O[]O{get;set;}
}
公共O类
{
公共字符串测试{get;set;}
公共字符串fddf{get;set;}
公共字符串d{get;set;}
}
请注意,xml中的
必须更改为
\”
字符串中的
,理解代码将不起作用

使用System.Text.Json;
公共myJson()
{
字符串json=“”;
Rootobject jsonObject=JsonConvert.DeserializeObject(json);
}
公共类根对象
{
公共int nt{get;set;}
公共布尔r{get;set;}
公共O[]O{get;set;}
}
公共O类
{
公共字符串测试{get;set;}
公共字符串fddf{get;set;}
公共字符串d{get;set;}
}

xml基本上都是一个字符串。您是否尝试过先对Json进行反序列化,然后作为第二步分别对XML进行反序列化?我尝试过对一个对象进行反序列化,但它抛出了一个例外,这将有助于向我们展示您所做的尝试以及确切的错误,以便能够提供更好的答案:)我尝试创建一个模型来反序列化Json。但每次XML结构发生变化时,这种XML文件结构都会不同。这是我的问题)当我尝试使用JSON2C之类的在线转换器创建对象时,它表示JSON语法无效xml基本上都是字符串。您是否尝试过先对Json进行反序列化,然后作为第二步分别对XML进行反序列化?我尝试过对一个对象进行反序列化,但它抛出了一个例外,这将有助于向我们展示您所做的尝试以及确切的错误,以便能够提供更好的答案:)我尝试创建一个模型来反序列化Json。但每次XML结构发生变化时,这种XML文件结构都会不同。这是我的问题)当我尝试使用在线转换器创建对象,如JSON2C时,它说无效的JSON syntaxI不能使用string.Replace()方法更改为\。你能提出一些建议吗?是的。有一种方法可以做到这一点,但当或多或少会有一个白空间时,它不会正常运行。有没有办法用string.replace()方法将那些“我不能更改”替换为\?你能提出一些建议吗?是的。有一种方法可以做到这一点,但当有或多或少的空白时,它不会正常运行。有没有办法替换那些
using System.Text.Json;
public myJson()
{
    string json = "<json>";
    Rootobject jsonObject = JsonConvert.DeserializeObject<Rootobject>(json);
}
public class Rootobject
{
    public int nt { get; set; }
    public bool r { get; set; }
    public O[] o { get; set; }
}

public class O
{
    public string test { get; set; }
    public string fddf { get; set; }
    public string d { get; set; }
}