Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.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# 使用loadXml将字符串转换为XmlDocument_C#_Xml_String_Xmldocument_Invalid Characters - Fatal编程技术网

C# 使用loadXml将字符串转换为XmlDocument

C# 使用loadXml将字符串转换为XmlDocument,c#,xml,string,xmldocument,invalid-characters,C#,Xml,String,Xmldocument,Invalid Characters,我正在尝试使用loadXML将字符串转换为xml alex->当字符串格式适合xml转换时,就没有问题了 5但当字符串的xml值包含无效字符时,它会引发异常 如何将包含无效字符的字符串转换为XmlDocument? 是否有任何方法可以用xml转义字符替换无效字符,而不必触碰字符串中的标记 有没有办法在不触摸标签的情况下将5

我正在尝试使用loadXML将字符串转换为xml

alex
->当字符串格式适合xml转换时,就没有问题了

5<3
->但当字符串的xml值包含无效字符时,它会引发异常

如何将包含无效字符的字符串转换为XmlDocument? 是否有任何方法可以用xml转义字符替换无效字符,而不必触碰字符串中的标记


有没有办法在不触摸标签的情况下将
5<3
更改为
5 3
制作自己的编码语言。例如:“3<5”变成“3 inf 5”

在这种情况下,它是有效的

之后,您只需使用以下内容进行解析:

string result = "3 inf 5";
result = result.replace("inf", "<");
string result=“3 inf 5”;

result=result.replace(“inf”,"该XML是完全有效的。如果它是
5<3
,那将是另一回事。至于获取无效XML进行解析,我不希望您运气好。大多数XML API希望您从有效XML开始。我建议您修复生成损坏XML的任何内容。我正在从另一个我无法控制的程序读取此字符串。例如“”,所以在读取字符串之前我不能做任何事情,我需要在读取字符串之后和尝试转换为xml之前做一些事情。您知道所需xml的架构吗?
5<3
不是xml。不要尝试将非xml转换为xml,请拒绝它,并告诉发送它的任何人发送xml。如果数据不是有效的xml,则无法不要用这些数据生成XML文档。坚持使用有效的XML,否则就完全忽略这些糟糕的数据。