繁体   English   中英

将XMl文件读取到字符串数组

[英]Read XMl File to String Array

我有一个XML文件,我想读取数据并将其分配给字符串数组,因此将Operative分配给1个数组,将JobLocation分配给另一个

<Demo>
    <JOBOperatives>
    <Operative>
        <Clock>aaaa</Clock>
        <Name>aaaaa</Name>
        <MobileNumber>00000000010</MobileNumber>
        <OperativeTrade>3</OperativeTrade>
        <OperativeTicket>1</OperativeTicket>
    </Operative>
    </JOBOperatives>
    <JobLocation>
        <UPRN>aaa</UPRN>
        <Address1>aaaa</Address1>
        <Address2>aaaa</Address2>
        <Address3>aaaa</Address3>
        <Address4>aaa</Address4>
        <Address5>aa</Address5>
        <PostCode>JR4 4ED</PostCode>
    </JobLocation>

我认为您的意思是xml中每个属性在数组中都是它自己的元素?

这似乎不是一个很好的数据结构,特别是因为xml模式定义允许项目以任何顺序到达; 您预期的索引可能会搞砸。 .Net中强类型对象似乎更合适,并且得到了很好的支持。 至少您应该使用字典,以便保留键。

在这种情况下,每棵树中的项目数量非常少,您可能会得到很多,因此词典可能不是最佳选择。 你可以做的对象,但是这将是很多额外的代码只是为了设置它,我得到的印象XML可能来自不同的来源和依据的来源(或某事上是不同的,其中结构会定期更换,因此,最初希望获得松散类型的验证)。

最终,您的目的地是一个数据库,因此我认为在这种情况下,我将向您展示一个使用数据集的示例:

string xml = GetXmlString(); // <Demo><JobOperatives><Operative><Clock>aaaa</Clock>...
StringReader sr = new StringReader(xml);
DataSet ds = new DataSet();
ds.ReadXml(sr);

进行以下操作:查找数据集的.Tables集合,每个表的.TableName属性, .Columns集合和.Rows集合,以及每个列.ColumnName.DataType属性。

XmlNode类的OuterXml属性在这里可能会对您有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM