Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.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#_Xml - Fatal编程技术网

C#以预定义格式解析XML

C#以预定义格式解析XML,c#,xml,C#,Xml,下面是我的示例xml文件 <?xml version="1.0"?> <AAA> <BBB specName="A" delimiters="," commentChars="#" titleLines="1"> <DDD name="SSS" col="0"/> <EEE key="XXX">model</EEE> </BBB> <CCC fName="Test" specName="

下面是我的示例xml文件

<?xml version="1.0"?>
<AAA>
<BBB specName="A" delimiters="," commentChars="#" titleLines="1">
    <DDD name="SSS" col="0"/> 
    <EEE key="XXX">model</EEE> 
</BBB>
<CCC fName="Test" specName="TestRange" >Bol</CCC>
</AAA>

您可以解析它,然后使用LINQ转换XML

您的半伪代码实际上非常接近最终结果。因此,我冒昧地提供了解决方案

void Main()
{
    string file = "<AAA><BBB specName=\"A\" delimiters=\",\" commentChars=\"#\" titleLines=\"1\"><DDD name=\"SSS\" col=\"0\"/><EEE key=\"XXX\">model</EEE></BBB><CCC fName=\"Test\" specName=\"TestRange\">Bol</CCC></AAA>";
    var doc = XDocument.Parse(file);

    var a = doc.Element("AAA").Element("BBB").Attribute("specName").Value;
    var b = doc.Element("AAA").Element("BBB").Element("EEE").Attribute("key").Value;
    var c = doc.Element("AAA").Element("BBB").Element("EEE").Value;
    var d = doc.Element("AAA").Element("CCC").Value;    


    Console.WriteLine (a);
    Console.WriteLine (b);
    Console.WriteLine (c);
    Console.WriteLine (d);
}
void Main()
{
string file=“modelBol”;
var doc=XDocument.Parse(文件);
var a=单据元素(“AAA”).元素(“BBB”).属性(“specName”).值;
var b=单据要素(“AAA”).要素(“BBB”).要素(“EEE”).属性(“键”).值;
var c=单据要素(“AAA”).要素(“BBB”).要素(“EEE”).价值;
var d=单据要素(“AAA”).要素(“CCC”)价值;
Console.WriteLine(a);
控制台写入线(b);
控制台写入线(c);
控制台写入线(d);
}
输出:

A
XXX
型号
波尔

void Main()
{
    string file = "<AAA><BBB specName=\"A\" delimiters=\",\" commentChars=\"#\" titleLines=\"1\"><DDD name=\"SSS\" col=\"0\"/><EEE key=\"XXX\">model</EEE></BBB><CCC fName=\"Test\" specName=\"TestRange\">Bol</CCC></AAA>";
    var doc = XDocument.Parse(file);

    var a = doc.Element("AAA").Element("BBB").Attribute("specName").Value;
    var b = doc.Element("AAA").Element("BBB").Element("EEE").Attribute("key").Value;
    var c = doc.Element("AAA").Element("BBB").Element("EEE").Value;
    var d = doc.Element("AAA").Element("CCC").Value;    


    Console.WriteLine (a);
    Console.WriteLine (b);
    Console.WriteLine (c);
    Console.WriteLine (d);
}