c# 读取xml文件中的内容

mxs_8 2006-08-01 10:28:13
<sea..TMP_DEC_E_CONTAINER>
<T_D_E_C_ID>1</T_D_E_C_ID>
<T_E_H_ID>6</T_E_H_ID>
<BD_SUB_C_ID>1</BD_SUB_C_ID>
<SEQ_NO>2</SEQ_NO>
<CONTAINER_ID>1</CONTAINER_ID>
<CONTAINER_MD>1</CONTAINER_MD>
<CONTAINER_WT>1.00000</CONTAINER_WT>
<NOTE_S>1</NOTE_S>
</sea..TMP_DEC_E_CONTAINER>
<sea..TMP_DEC_E_CONTAINER>
<T_D_E_C_ID>1</T_D_E_C_ID>
<T_E_H_ID>6</T_E_H_ID>
<BD_SUB_C_ID>1</BD_SUB_C_ID>
<SEQ_NO>2</SEQ_NO>
<CONTAINER_ID>1</CONTAINER_ID>
<CONTAINER_MD>1</CONTAINER_MD>
<CONTAINER_WT>1.00000</CONTAINER_WT>
<NOTE_S>1</NOTE_S>
</sea..TMP_DEC_E_CONTAINER>
就像上面的例子一样,我应该如何分别读出<sea..TMP_DEC_E_CONTAINER></sea..TMP_DEC_E_CONTAINER>
中的内容,请大有指教
...全文
862 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuanzhihua520 2006-08-22
  • 打赏
  • 举报
回复
up
蓝天云空 2006-08-16
  • 打赏
  • 举报
回复
#region Public Static 读取XML配置文件
/// <summary>
/// 读取XML配置文件
/// </summary>
/// <param name="XMLPath">XML配置文件的路径</param>
/// <returns>返回的数据集</returns>
public static DataSet ReadXMLSetting(string XMLPath)
{
if(File.Exists(XMLPath) == false)
{
return null;
}
else
{
DataSet dsXML = new DataSet();

try
{
dsXML.ReadXml(XMLPath);
return dsXML;
}
catch
{
return null;
}
}

}
#endregion
huming_h 2006-08-16
  • 打赏
  • 举报
回复
学习
chy105 2006-08-01
  • 打赏
  • 举报
回复
楼上已经有解了
sdl2005lyx 2006-08-01
  • 打赏
  • 举报
回复
告诉你一个最简单的办法:(由于你这个xml文件非常有规则,其实就是数据库表的两行记录)
用DataTable:

string filename="你的文件位置";
DataTable tab=new DataTable();
tab.ReadXml(filename);

for(int i=0;i<tab.Rows.Count;i++)
{
for(int j=0;j<tab.Columns.Count;j++)
{
tab.Rows[i][j];//这里就是你要的值
}
}
FirstNet 2006-08-01
  • 打赏
  • 举报
回复
学习加关注!
ludbul 2006-08-01
  • 打赏
  • 举报
回复
首先,从上面看来,你这个XML文件中有两个节点,这在XML文件读取中会出现错误,所以你需要增加一个根节点。
读取XML文件节点信息的方法如下:
string strDocRoad = Application.StartupPath.ToString() ;
strDocRoad += "\\XMLFile1.xml" ;

XmlDocument myXmlDoc = new XmlDocument() ;
myXmlDoc.Load( strDocRoad ) ;

XmlNodeList nodeList = myXmlDoc.DocumentElement.ChildNodes ;
foreach( XmlElement element in nodeList ){
if( element.Name == "sea..TMP_DEC_E_CONTAINER" ){
XmlNodeList list2 = element.ChildNodes ;
if( list2.Count > 0 ){
foreach( XmlElement el in list2 ){
this.label1.Text += "\r\n" + el.Name + ":" + el.InnerXml ;}}}}
yuzhlhua 2006-08-01
  • 打赏
  • 举报
回复
using System.Xml;
using System.Windows.Forms;

private string STRXML = "xmlLanguage.xml";
//xml 名称 在 debug下
private XmlDocument xmlDoc;
private XmlNodeReader xmlNodeRead;

public void ReadXml(Object control, string langue)
{
xmlDoc = new XmlDocument();
xmlDoc.Load(STRXML);
xmlNodeRead = new XmlNodeReader(xmlDoc);
XmlNodeList xmlNodelist = xmlDoc.SelectSingleNode("/LangueEdition").ChildNodes;
foreach (XmlNode xn in xmlNodelist)//遍历所有子节点
{
XmlElement xmlEle = (XmlElement)xn;
XmlNodeList xmlListTmp = xmlEle.ChildNodes;
string strTmp = xmlListTmp.Item(0).InnerText;
if (strTmp == langue)
{
XmlNodeList xmlList = xmlListTmp;
foreach (XmlNode node in xmlList)
{
if (node.Name == ((Control)control).Name)
{
((Control)control).Text = node.InnerText;
}
}
break;
}
}
}
我用的,你改改吧~
wuhuiITren 2006-08-01
  • 打赏
  • 举报
回复
我帮你顶,你给我分撒
heilong05 2006-08-01
  • 打赏
  • 举报
回复
Mark 楼上已经有解了



====CSDN 小助手 V2.5 2005年11月05日发布====
CSDN小助手是一款脱离浏览器也可以访问Csdn论坛的软件
界面:http://blog.csdn.net/Qqwwee_Com/archive/2005/11/05/523395.aspx
下载:http://szlawbook.com/csdnv2

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧