一、使用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);
}
}

  

C# XML读写实例的更多相关文章

  1. NFC读写实例

    package com.sy.nfc.test; import java.io.IOException; import android.nfc.NdefMessage; import android. ...

  2. 【Python】Python XML 读写

    class ACTIVE_FILE_PROTECT_RULE_VIEW(APIView): renderer_classes = (JSONRenderer, BrowsableAPIRenderer ...

  3. XML读写工具

    import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileOutputStream; import j ...

  4. Python中xml.etree.ElementTree读写xml文件实例

    import osimport xml.etree.ElementTree as ET'''Python 标准库中,提供了6种可以用于处理XML的包,本文举实例说明第6种1.xml.dom2.xml. ...

  5. xml读写文件实例

    在某个通讯中需要向服务器发送请求xml,格式例子如下: <?xml version="1.0" encoding="UTF-8"?> <ROO ...

  6. net8:XML的读写操作【广告控件的XML文件实例】

    原文发布时间为:2008-08-05 -- 来源于本人的百度文章 [由搬家工具导入] 【用了datalist控件,datalist控件自己学会,主要知道其他按钮COMMANDNAME属性应该改为edi ...

  7. 网站的配置文件XML读写

    网站的配置信息一般都写入到XML中,以下是简单的对xml的读写操作,仅供参考. 读操作: XmlDocument xmlDoc = new XmlDocument(); XmlReaderSettin ...

  8. SAX方式解析XML文件实例

    books.XML文件: 书籍book.java实体类: public class Book { private String id; private String name; private Str ...

  9. UE4 Xml读写

    UE4自带一个XmlParser,可以很方便的实现Xml的读写. 1,在PublicDependencyModuleNames.AddRange中添加XmlParser. 2,include XmlP ...

随机推荐

  1. 区间更新 zoj3911

    哎,没什么坑点,一个简单的区间更新题,但是改了好几天没改对,最终还是过了~~发个纪念下 泪奔... #include<cstdio>#include <iostream>#in ...

  2. LeetCode() 数字1的个数

    int ones = 0; for (long m = 1; m <= n; m *= 10) { long a = n/m, b = n%m; ones += (a + 8) / 10 * m ...

  3. 【转载】IIS7.5(经典模式)访问静态资源(.css和.js文件)提示:未能执行 URL

    IIS7.5(经典模式)静态资源(.css和.js文件)提示:未能执行 URL “/”应用程序中的服务器错误. 未能执行 URL. 说明: 执行当前 Web 请求期间,出现未处理的异常.请检查堆栈跟踪 ...

  4. java比较两个字符串是否相等

    从c 到c++ 到 c# 到 JavaScript  判断两个字符串是否相等,用==号都可以.奇葩的java怎么可以只能用equals()这个函数.只是因为String是引用类型吗??!!哭笑不得.. ...

  5. C++常见gcc编译链接错误解决方法

    除非明确说明,本文内容仅针对x86/x86_64的Linux开发环境,有朋友说baidu不到,开个贴记录一下(加粗字体是关键词): 用“-Wl,-Bstatic”指定链接静态库,使用“-Wl,-Bdy ...

  6. 写MYSQL存储过程遇到的一个小BUG

    DELIMITER $$ USE `income_new`$$ DROP PROCEDURE IF EXISTS `a`$$ CREATE DEFINER=`income_new`@`%` PROCE ...

  7. 使用Idhttp.get('') 造成假死(堵塞),请问线程idhttp怎么才能做到不出错?

    参考这个帖子 http://blog.csdn.net/chyoma/article/details/50839715

  8. 42. Subsets && Subsets II

    Subsets Given a set of distinct integers, S, return all possible subsets. Note: Elements in a subset ...

  9. 关于listview的一些属性

    由于这两天在做listView的东西,所以整理出来一些我个人认为比较特别的属性,通过设置这样的属性可以做出更加美观的列表 首先是stackFromBottom属性,这只该属性之后你做好的列表就会显示你 ...

  10. springmvc常用注解与类型转换

    springmvc常用注解与类型转换 一:前置 spring -servlet.xml 注入 <!-- 启用spring mvc 注解 --> <context:annotation ...