您的位置:首页 > 编程语言 > C#

C# XML读写实例

2016-02-26 08:32 633 查看
一、使用System.Xml

实例:完成如下格式配置文件的读写操作:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE doc[]>
<root>
<DatabaseInfo>
<HostName>127.0.0.1</HostName>
<DatabaseName>orcl</DatabaseName>
<UserName>scott</UserName>
<Password>scott</Password>
</DatabaseInfo>
</root>


实现代码:

//读操作
public static string getConectStringXml()
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(DBConfigFilePath); //加载XML文档

string xpath = "/root";
XmlNode xmlNode = xmlDoc.SelectSingleNode(xpath);
if (xmlNode != null)
{
xmlNode = xmlNode.SelectSingleNode("/root/DatabaseInfo");
var tst = xmlNode.SelectSingleNode("/root/DatabaseInfo/HostName");
string hostName = tst.InnerXml;
string sid = xmlNode.SelectSingleNode("/root/DatabaseInfo/DatabaseName").InnerXml;
string uid = xmlNode.SelectSingleNode("/root/DatabaseInfo/UserName").InnerXml;
string pwd = xmlNode.SelectSingleNode("/root/DatabaseInfo/Password").InnerXml;

StringBuilder connectStr = new StringBuilder();
connectStr.Append("Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=");
connectStr.Append(hostName);
connectStr.Append(")(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=");
connectStr.Append(sid);
connectStr.Append(")));User Id=");
connectStr.Append(uid);
connectStr.Append("; Password =");
connectStr.Append(pwd);
connectStr.Append(";Unicode=True");
connectionString = connectStr.ToString();
}
return connectionString;
}

//写操作
public static void setConectStringXml(string hostName,string sid,string uid,string pwd)
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(DBConfigFilePath); //加载XML文档
string xpath = "/root";
XmlNode xmlNode = xmlDoc.SelectSingleNode(xpath);
if (xmlNode != null)
{
xmlNode = xmlNode.SelectSingleNode("/root/DatabaseInfo");
var subNode = xmlNode.SelectSingleNode("/root/DatabaseInfo/HostName");
subNode.InnerXml = hostName;
subNode = xmlNode.SelectSingleNode("/root/DatabaseInfo/DatabaseName");
subNode.InnerXml = sid;
subNode = xmlNode.SelectSingleNode("/root/DatabaseInfo/UserName");
subNode.InnerXml = uid;
subNode = xmlNode.SelectSingleNode("/root/DatabaseInfo/Password");
subNode.InnerXml = pwd;
xmlDoc.Save(DBConfigFilePath);
}
}


  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: