关于读XML的有关问题
关于读XML的问题
string kkk = System.Web.HttpContext.Current.Server.MapPath("qg_config.xml");
xmlDoc.Load(kkk);
XmlNodeList NodeList = xmlDoc.SelectNodes("/qgconfig/indexpanle");
string indexconfig = NodeList[0].ChildNodes[0].InnerText;
XmlNodeList newsList = xmlDoc.SelectNodes("/qgconfig/topnews");
for (int i = 0; i < newsList.Count; i++)
{
tfields = NodeList[i].ChildNodes[0].InnerText; 为什么tfields的值=上面 indexconfig 的值
pagesize = NodeList[i].ChildNodes[1].InnerText; 读到这就出错了
sdiv = NodeList[i].ChildNodes[2].InnerText;
stype = NodeList[i].ChildNodes[3].InnerText;
stitle = NodeList[i].ChildNodes[4].InnerText;
sclass = NodeList[i].ChildNodes[5].InnerText;
}
XML文件如下
<qgconfig>
<topnews>
<fields>T.new_id,T.new_title,T.new_sendtime,T.new_type</fields>
<pagesize>10</pagesize>
<div>companynews,partynews,LabourUnion,othernews</div>
<stype>4556da2728dcd560,8777d14fc5c6e8bf,50cbb2027a00713b,404642d1f7972ce6</stype>
<stitle>公司新闻,党建活动,工会活动,其它活动</stitle>
<class>qg_comps,qg_pta,qg_un,qg_pta</class>
</topnews>
<indexpanle>
<panlelist>impnews/ /4,news/4556da2728dcd560/10,news/8777d14fc5c6e8bf/10,notes/ /5</panlelist>
</indexpanle>
</qgconfig>
------解决思路----------------------
你把节点写错了,应该是newsList,而不是NodeList
------解决思路----------------------
你循环newList,然后循环里去获取NodeList??
那第一个当然跟上面的一样
第二个,索引溢出了
string kkk = System.Web.HttpContext.Current.Server.MapPath("qg_config.xml");
xmlDoc.Load(kkk);
XmlNodeList NodeList = xmlDoc.SelectNodes("/qgconfig/indexpanle");
string indexconfig = NodeList[0].ChildNodes[0].InnerText;
XmlNodeList newsList = xmlDoc.SelectNodes("/qgconfig/topnews");
for (int i = 0; i < newsList.Count; i++)
{
tfields = NodeList[i].ChildNodes[0].InnerText; 为什么tfields的值=上面 indexconfig 的值
pagesize = NodeList[i].ChildNodes[1].InnerText; 读到这就出错了
sdiv = NodeList[i].ChildNodes[2].InnerText;
stype = NodeList[i].ChildNodes[3].InnerText;
stitle = NodeList[i].ChildNodes[4].InnerText;
sclass = NodeList[i].ChildNodes[5].InnerText;
}
XML文件如下
<qgconfig>
<topnews>
<fields>T.new_id,T.new_title,T.new_sendtime,T.new_type</fields>
<pagesize>10</pagesize>
<div>companynews,partynews,LabourUnion,othernews</div>
<stype>4556da2728dcd560,8777d14fc5c6e8bf,50cbb2027a00713b,404642d1f7972ce6</stype>
<stitle>公司新闻,党建活动,工会活动,其它活动</stitle>
<class>qg_comps,qg_pta,qg_un,qg_pta</class>
</topnews>
<indexpanle>
<panlelist>impnews/ /4,news/4556da2728dcd560/10,news/8777d14fc5c6e8bf/10,notes/ /5</panlelist>
</indexpanle>
</qgconfig>
------解决思路----------------------
你把节点写错了,应该是newsList,而不是NodeList
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load("C:\\1.xml");
XmlNodeList NodeList = xmlDoc.SelectNodes("/qgconfig/indexpanle");
string indexconfig = NodeList[0].ChildNodes[0].InnerText;
XmlNodeList newsList = xmlDoc.SelectNodes("/qgconfig/topnews");
for (int i = 0; i < newsList.Count; i++)
{
tfields = newsList[i].ChildNodes[0].InnerText;
pagesize = newsList[i].ChildNodes[1].InnerText;
sdiv = newsList[i].ChildNodes[2].InnerText;
stype = newsList[i].ChildNodes[3].InnerText;
stitle = newsList[i].ChildNodes[4].InnerText;
sclass = newsList[i].ChildNodes[5].InnerText;
}
------解决思路----------------------
你循环newList,然后循环里去获取NodeList??
那第一个当然跟上面的一样
第二个,索引溢出了