不谋万世者,不足谋一时;不谋全局者,不足谋一域。君子敏于事而慎于言
新浪微薄:土司阿哈
用C#读xml文件
上一篇 /
下一篇 2008-12-01 17:46:02
/ 个人分类:软件开发相关
51Testing软件测试网p9Y3q.\)CW9z#uV//读一个Xml文件,用XmlTextReader来读 51Testing软件测试网
B"E`t7|%?9hR
public ArrayList readXml(string fileName) 51Testing软件测试网maLn3uQ}3j-m
{ 51Testing软件测试网ZRcTNA
ArrayList readResult=new ArrayList();
e
E!U8Tq@Q|0readResult.Clear(); 51Testing软件测试网&n&_
o'n I3e/j
;wc&US.^)U{+{D0XmlTextReader tr=new XmlTextReader(fileName);
!{
LVt1O*`8@7f0while(!tr.EOF)
auwj)dK0{
T3I@MtxW0if(tr.MoveToContent()==XmlNodeType.Element) 51Testing软件测试网V7E
h1g5Btk
{
a(E,wB!Y;z[0try 51Testing软件测试网\vmC'P-S8\2uI"H
{
cxq*W0hy0readResult.Add(tr.ReadElementString()); 51Testing软件测试网6A"D#I8j vsM#t0v2x
}
6q?B,Q,f:y*F4C,C0catch(XmlException ex){} 51Testing软件测试网I.|^?B?"v4pA7I
}
#j&y|}2r3w6[0else 51Testing软件测试网z O/R6Y0@x4N
{tr.Read();} 51Testing软件测试网,Ql3r*rpq"iR
} 51Testing软件测试网[ B-z5bbZI
return readResult;
r2w^vR!V0}
P6]3rQn3GD0
_;q-d!]
p/zt0
)U_z;]+L0/* 51Testing软件测试网"e"x@#C9{+Fd
* 读一个Xml的XmlDocument,用递归调用方法来显示所读Xml的所有内容 51Testing软件测试网h#fBzv;F \2fE/V
* 递归调用不适合文件很大的Xml文件读取,这里只是展示一下XmlDocument的内部结构 51Testing软件测试网K9nrmON$r7e
* 正常情况可以用XmlDocument的GetElementsByTagName()方法来查询 51Testing软件测试网[;F,L0q_9z
* */ 51Testing软件测试网.s7K+V)r
in6xy
public ArrayList readXml(XmlDocument doc){ 51Testing软件测试网B6MP1e"oO
ArrayList readResult=new ArrayList(); 51Testing软件测试网*?t@kP!t3Qo
readResult.Clear(); 51Testing软件测试网r'D-l9q-kv a6@6n
)M~Y$MA0XmlNodeList nodeLst=doc.ChildNodes;
q4?my&xBy0XmlNodeListRead(readResult,nodeLst);
d
_'GAsNpGi0
51Testing软件测试网"JVpl;}
{
Z~return readResult;
;m:H$hxhpze0}
1y]B!Ic
E2`0
7Si,S%Doy:\0//递归调用 51Testing软件测试网p$}7h:Y7U
public void XmlNodeListRead(ArrayList readResult,XmlNodeList nodeLst){
Q$Oz o~,A"}J#lQG0for (int i=0;i <nodeLst.Count;i++) 51Testing软件测试网+Q Ay9Z5Ei1Dw/u:ql
{ 51Testing软件测试网(Of)Y9Vj-^&O
XmlNode node=nodeLst[i]; 51Testing软件测试网N1yI_)[,O
if(!node.HasChildNodes) 51Testing软件测试网-J!@ v8S5|'PBO
{