xml、txt、config的一些基本用法

先来测试一下xml的读取好了
创建了一个student.xml的文件

<?xml version="1.0" encoding="UTF-8"?>
<students>
    <student position="班长">
        <name>张三</name>
        <age>15</age>
        <sex></sex>
    </student>
    <student position="学习委员">
        <name>李四</name>
        <age>14</age>
        <sex></sex>
    </student>
    <student>
        <name>王五</name>
        <age>16</age>
        <sex></sex>
    </student>
</students>

然后写了一个测试方法

 [TestMethod]
        public void TestXml()
        {
            XmlDocument xml = new XmlDocument();//XML对象
            try
            {
                xml.Load("student.xml");//读取XML文件
                XmlNode students = xml.ChildNodes[1];//找第二个xml节点
                XmlNodeList listnodes= students.SelectNodes("student");//找students下所有符合的节点
                XmlNode student = students.SelectSingleNode("student");//找students下第一个符合的节点
                XmlAttribute xmla = student.Attributes[0];//找属性
                string xmlastring = xmla.Value;//属性值
                Console.WriteLine(xmlastring);//取出第一个学生的属性值
                var sex1 = listnodes[1].SelectSingleNode("sex").InnerText;//取出第二个学生的性别
                Console.WriteLine(sex1);
            }
            catch (Exception ex)
            {
                Console.WriteLine("加载失败:加载路径或格式不正确");
            }
          
            
        }


运行结果

config用法

创建一个config代码如下

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
    <add key="张三" value="603班"/>
    <add key="李四" value="601班"/>
  </appSettings>
  <connectionStrings>
    <add name="dbtest" connectionString="Data Source=.;Initial Catalog=EMQ_MANAGE;User ID=sa password=zkx123"/>
    <add name="students" connectionString="Data Source=192.168.1.111;Initial Catalog=orcl;User ID=sa password=zkx123"/>  
</connectionStrings>
</configuration>

以下是测试代码

[TestMethod]
        public void testConfig()
        {
            string value = ConfigurationManager.AppSettings["张三"];//获取appseting节点的值
            string value1 = ConfigurationManager.AppSettings[1];
            string value2 = ConfigurationManager.ConnectionStrings["dbtest"].ToString();//获取数据库连接字符串
            string value3 = ConfigurationManager.ConnectionStrings["students"].ToString();//获取数据库连接字符串
            ConfigXmlDocument cxd = new ConfigXmlDocument();//和XmlDocument一样的用法只不过一个是读xml一个是读config
            cxd.Load("../../App.config");
            var value4 = cxd.ChildNodes[1].SelectSingleNode("connectionStrings").SelectNodes("add")[0].Attributes["name"].Value;
            var value5 = cxd.ChildNodes[1].SelectSingleNode("connectionStrings").SelectNodes("add")[0].Attributes["connectionString"].Value;
            Console.WriteLine(value);//获取appseting节点名字叫张三的值
            Console.WriteLine(value1);//获取第二个节点的值
            Console.WriteLine(value2);//获取["dbtest"]数据库连接
            Console.WriteLine(value3);//获取第二个节点的数据库连接字符串
            Console.WriteLine(value4);//用XML的方式获取第一个节点的name值
            Console.WriteLine(value5);//用XML的方式获取第一个节点的connectionString值
        }

运行结果

 

txt的读写

首先创建了一个message.txt的文本注意他的字符集如果字符集错了就会出现乱码我就已UTF-8为例子好了

然后进行写入和读取操作

[TestMethod]
        public void TestTxt()
        {
            StreamWriter sw = new StreamWriter("message.txt",true, Encoding.UTF8);//创建写流
            sw.WriteLine("");//空表示直接换行
            sw.WriteLine("你好");//写入内容
            sw.WriteLine("我是新来的甲六");//写入内容
            sw.Close();

            FileStream fs = new FileStream("message.txt", FileMode.Open);//创建文件流
            StreamReader sr = new StreamReader(fs, Encoding.UTF8);//创建读流
            // sr.CurrentEncoding = Encoding.UTF8;
            var textvalue = sr.ReadToEnd();//从头读到尾
            sr.Close();
            fs.Close();
            Console.WriteLine(textvalue);
        }

由于时间匆忙就只写了一种
注意:用流进行读写的时候一定要记得关闭

运行测试结果

打开TXT文本

posted @ 2013-10-23 16:44  srfree  阅读(494)  评论(0编辑  收藏  举报