Xml ファイルを使用する必要があることがよくありますが、Xml ファイルとは何ですか?
例を使用して説明しましょう: testResult.xml ファイル
<?xml version="1.0" encoding="utf-8" ?> <Columns> <column id="序号"> <name>序号</name> </column> <column id="检验项目"> <name>检验项目</name> </column> <column id="单位"> <name>单位</name> </column> <column id="标准要求"> <name>标准要求</name> </column> <column id="检验结果"> <name>检验结果</name> </column> <column id="结论"> <name>结论</name> </column> </Columns>
上記は、Xml ファイルがデータの保存に使用されることはわかっていますが、このデータをどのように走査するのでしょうか?
実際、最も簡単な方法は Linq を使用することです:
private void GetTestResultXml() { List<string> iTestResultXml=new List<string>(); //定义并从xml文件中加载节点(根节点) XElement rootNode = XElement.Load(@"..\..\Xml\testResult.xml"); //查询语句: 获得根节点下name子节点(此时的子节点可以跨层次:孙节点、重孙节点......) IEnumerable<XElement> targetNodes = from target in rootNode.Descendants("column") select target; foreach (XElement node in targetNodes) { iTestResultXml.Add(node.Value); } }
この方法で、9ca8bcd8dc9da41be539812c43422c59 タグ内のすべてのデータを取得し、リスト iTestResultXml に保存できます。
testResult.xml ファイルでは、9ca8bcd8dc9da41be539812c43422c59 タグが独自の ID を設定していることがわかります。この ID はデータではなく、その属性の 1 つです。
それでは、それを取得したい場合は、次のようにします。彼のタグのコンテンツの代わりに の属性を取得しますか?
private void GetTestResultXml() { List<string> iXmlID = new List<string>(); //定义并从xml文件中加载节点(根节点) XElement rootNode = XElement.Load(@"..\..\Xml\testResult.xml"); //查询语句: 获得根节点下name子节点(此时的子节点可以跨层次:孙节点、重孙节点......) IEnumerable<XElement> targetNodes = from target in rootNode.Descendants("column") select target; foreach (XElement node in targetNodes) { iXmlID.Add(node.Attribute("id").Value); //获取指定属性的方法 } }
このようにして、9ca8bcd8dc9da41be539812c43422c59 タグの id 属性のリスト iXmlID を取得します。
以上がXML の Linq は、保存されたデータをどのように走査しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。