【问题标题】:c# xml file access [closed]c#xml文件访问[关闭]
【发布时间】:2011-03-20 13:46:42
【问题描述】:

我有两个 xml 文件,其中一个是具有此代码的 dev.xml

 <mapping>
  <character>अ</character>
  <itrans>a</itrans>
</mapping>

第二个文件是guj.xml

  <mapping>
  <character>અ</character>
  <itrans>a</itrans>
  <mapping>

我需要访问这些 xml 文件并将字符存储在 global.asa 中的二维数组中!!我正在使用 C# Visual Studio 2008!谢谢!!

到目前为止我已经完成了一些事情

        sbyte[,] a = new sbyte[100, 100];
        sbyte[,] b = new sbyte[100, 100];
        int count = 0;
        XDocument xmlDoc = XDocument.Load("dev.xml");
        while (!eof)
        {
            if (documentcontent.childnode == "true")
                count = count + 1;
        }

         for(int i=0;i<count;i++)
        {
             for(int j=0;j<count;j++)
             {
                 if(j==0)
                 a[i][j]=documentcontent.childnode.childnode[0].data;
                 else
                     a[i][j]=documentcontent.childnode.childnode[1].data;
             }

         }

文件结束条件是否正确?我收到一个错误! c#中如何使用文件结尾?

【问题讨论】:

  • 到目前为止你得到了什么?你被什么困住了? (SO 不是只会为您编写代码的地方。)
  • c# xml file access 重复。请不要发布/询问旧问题的修改版本,而是编辑原始问题。
  • 我在两个表中都有很多这样的字符,我想将 dev.xml 文件和 guj.xml 的数据节点存储在两个不同的二维数组中?例如 a[0][0]=अ 和 a[0][1]=a!!而在第二个数组中,我需要来自 guj.xml 的字符,例如 b[0][0]=a 和 b[0][1]=અ
  • @user:这听起来更像是你想要一个Dictionary&lt;string, string&gt;
  • 是的,那些 xml 文件就像字典一样,所以我需要将这些值存储在数组中!那你能告诉我代码吗??

标签: c# xml


【解决方案1】:

这应该可以帮助你:

XElement xdoc = XElement.Load("dev.xml");
var myMapping = xdoc.Descendants("mapping")
                    .ToDictionary(x => x.Element("character").Value, 
                                  x => x.Element("itrans").Value);

这假定 dev.xml 具有这种 XML 结构(添加了外部元素 mappings,因此您可以存储多个 mapping 元素:

<mappings>
  <mapping>
    <character>अ</character>
    <itrans>a</itrans>
  </mapping>
  <mapping>
    <character>foo</character>
    <itrans>bar</itrans>
  </mapping>
</mappings>

你可以像这样使用它:

string itrans = myMapping["foo"]; //returns bar

【讨论】:

    猜你喜欢
    • 2019-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-29
    • 1970-01-01
    • 1970-01-01
    • 2017-07-11
    相关资源
    最近更新 更多