XML文件如下:
view plaincopy to clipboardprint?
<?xml version="1.0" encoding="utf-8" ?>
<webManager>
<gotoURL>http://localhost/E8ITSM/Default.aspx?goto=1#phoneno=</gotoURL>
<inputUSER>txtUserName</inputUSER>
<inputPASSWORD>txtPassword</inputPASSWORD>
<inputBUTTON>cmdOK</inputBUTTON>
<beforeLOADSLEEP>3000</beforeLOADSLEEP>
<afterLOADSLEEP>1000</afterLOADSLEEP>
</webManager>
<?xml version="1.0" encoding="utf-8" ?>
<webManager>
<gotoURL>http://localhost/E8ITSM/Default.aspx?goto=1#phoneno=</gotoURL>
<inputUSER>txtUserName</inputUSER>
<inputPASSWORD>txtPassword</inputPASSWORD>
<inputBUTTON>cmdOK</inputBUTTON>
<beforeLOADSLEEP>3000</beforeLOADSLEEP>
<afterLOADSLEEP>1000</afterLOADSLEEP>
</webManager>
读取XML文件的方法
class xmlManager
{
public static String getXmlData(String value) //XMLDocument读取方式
{
String txt="";
XmlDocument xd = new XmlDocument();
xd.Load("systemConfig.xml");
String stxt = "webManager/" + value;
XmlNode xn = xd.SelectSingleNode(stxt);
return xn.InnerText;
}
public static String readXML(String value) // textReader读取方式
{
XmlTextReader xtr=new XmlTextReader("systemConfig.xml");
while(xtr.Read())
{
if (xtr.LocalName.Equals(value))
{
txt=xtr.ReadString();
}
}
}
上面就是一点简单的xml文件读取方法,需要说明的是。用法是不变的,产生的作用是多变的。
以上方法比较适合,一些动态系统参数的配置,它可比一般的文件好操作得多。
下面扩展下xmlDocument的用法吧, 我本完全可以用下面的方法来替代一些实体类的应用。
我们可以用 XMLDocumnetAdd方法往xmlDocument文件里加一些值,在getDocumnet
方法里读取,想想看我们在传对像给数据层做持久化时,他是不是很实用呢?
private XmlDocument XMLDocumnetAdd() //给xmlDocument文件添加值
{
#region Master_myGetFormsValue
FieldValues fv = new FieldValues();
fv.Add("L_Name", cfftName.Value.Trim());
fv.Add("L_SDATE", cfnCount.Value.ToString().Trim());
fv.Add("L_Edate", cfrContent.Value.Trim());
fv.Add("L_CountDay", cddSdate.dateTime.ToString().Trim());
fv.Add("L_Content", cfcdType.CatelogID.ToString().Trim());
XmlDocument xmlDoc = fv.GetXmlObject();
#endregion
return xmlDoc;
}
public void getDocumnet(){ //动态获取xmlDocument对象的值
String name=StringTool.SqlQ(fv.GetFieldValue("L_Name").Value) ;
Date sdate=StringTool.EmptyToNullDate(fv.GetFieldValue("L_SDATE").Value) ;
Dateedate= StringTool.EmptyToNullDate(fv.GetFieldValue("L_Edate").Value) ;
String countday= StringTool.SqlQ(fv.GetFieldValue("L_CountDay").Value);
String Content=.StringToolSqlQ(fv.GetFieldValue("L_Content").Value) ;
}