Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.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# 操作xml文件的最佳方法是什么?_C#_Regex_Xpath_Xsd_Linq To Xml - Fatal编程技术网

C# 操作xml文件的最佳方法是什么?

C# 操作xml文件的最佳方法是什么?,c#,regex,xpath,xsd,linq-to-xml,C#,Regex,Xpath,Xsd,Linq To Xml,我想处理XML文件 ... <Document Id="1091"> <Indexes> <Index Name="MODD" Value="aaa" /> <Index Name="DDAT" Value="bbb" /> <Index Name="CDAT" Value="ccc" /> <Index Name="MDAT" Value="ddd" /

我想处理XML文件

...
<Document Id="1091">
      <Indexes>
        <Index Name="MODD" Value="aaa" />
        <Index Name="DDAT" Value="bbb" />
        <Index Name="CDAT" Value="ccc" />
        <Index Name="MDAT" Value="ddd" />
        <Index Name="DOCN" Value="eee" />
        <Index Name="STAT" Value="fff" />
        ...
      </Indexes>
</Document>
<Document Id="2088">
      ...
。。。
...
...
我随机检索了一些索引的值。我将避免所有索引上的循环。你建议我使用的工具是什么?为什么

  • 将文件作为文本文件加载并使用正则表达式
  • 加载xml文件并使用XPath
  • 加载xml文件并使用Linq转换xml
  • 使用xsd.exe或xsd2代码生成类
  • 另一种方法

    • 我会选择LinqToXml。良好的语法和易于使用

      我会选择LinqToXml。良好的语法和易于使用

      不管你怎么做,都不要使用正则表达式,我会先尝试Linq转换成Xml。我发现它在大多数情况下都很好。永远不要在XML文件上使用任何形式的字符串操作。不同的规则集。如果没有完整的用例,这是主观的(到目前为止,您有“良好的语法和易于使用!”以及“非常棒!”之类的答案和注释…),但是您要这样做,不要使用正则表达式。我会先尝试Linq to Xml。我发现它在大多数情况下都很好。永远不要在XML文件上使用任何形式的字符串操作。不同的规则集。如果没有完整的用例,这是主观的(到目前为止,您已经有了“良好的语法和易于使用!”和“非常棒!”之类的答案和注释…)