附:XML文件
<?xml version="1.0" encoding="utf-8"?>
<Poll Question="Programm Language">
  <Answer Text="C#" Votes="10" />
  <Answer Text="C++" Votes="2" />
  <Answer Text="Java" Votes="34" />
  <Answer Text="JavaScript" Votes="12" />
  <Answer Text="VB" Votes="42" />
</Poll>//
public void ReaderXML()
{
    DataSet myDataSet = new DataSet();
    FileStream fsReader = new FileStream(filename,FileMode.Open);
    XmlTextReader myXmlReader = new XmlTextReader(fsReadXml);    myDataSet.ReaderXml(myXmlReader) //将XML文件中的数据读入到DataSet中
    
    myXmlReader.close();//关闭文件
}
问题:为什么myDataSet.Tables[0].Rows[0].ItemArray[0].ToString()="0",而
myDataSet.Tables[0].Rows[0].ItemArray[1].ToString()="Programm Language",我觉得myDataSet.Tables[0]这个表应该只有一列才对????

解决方案 »

  1.   

    ItemArray指该row中所有的值,当xml文件只有一个table时,如下代码:
    <?xml version="1.0" encoding="utf-8"?>
    <Poll Question="Programm Language">
    </Poll>确实该行中只有一个值,即你所说的列ItemArray
    myDataSet.Tables[0].Rows[0].ItemArray[0].ToString()="Programm Language";//成立
    myDataSet.Tables[0].Rows[0].ItemArray[0].ToString()="Programm Language";//数组越界!当其中加入另一个table后,如:
    <?xml version="1.0" encoding="utf-8"?>
    <Poll Question="Programm Language">
    <Answer Text="C#" Votes="10" />
    </Poll> 
    第一行中就会有两个值,会出现你的运行结果.由于在下对xml知之甚少,还望高手点拨!
      

  2.   

    对不起,修改一下:
    myDataSet.Tables[0].Rows[0].ItemArray[0].ToString()="Programm Language";//成立
    myDataSet.Tables[0].Rows[0].ItemArray[1].ToString()="Programm Language";//数组越界!
      

  3.   

    对不起,修改一下:
    myDataSet.Tables[0].Rows[0].ItemArray[0].ToString()="Programm Language";//成立
    myDataSet.Tables[0].Rows[0].ItemArray[1].ToString()="Programm Language";//数组越界!
    ------------------------------------------------------------------------------------
    我想更正一下:
    myDataSet.Tables[0].Rows[0].ItemArray[0].ToString()="0";//成立
    myDataSet.Tables[0].Rows[0].ItemArray[1].ToString()="Programm Language";//仍然成立!
    而且我在程序中试了myDataSet.Tables[0].Columns.Count = 2 //困惑?????
      

  4.   

    你把代码改为以下试一试<?xml version="1.0" encoding="utf-8"?>
    <Poll Question="Programm Language">
    </Poll>