文档章节

xml读取

RyanXing
 RyanXing
发布于 2015/12/24 17:40
字数 280
阅读 6
收藏 0

using System;
using System.IO;
using System.Linq;
using System.Xml.Linq;

namespace ThtfWeatherServ
{
    /// <summary>
    /// xml访问类
    /// 2015-12-24
    /// XingSQ
    /// </summary>
    class XMLAccess
    {
        /// <summary>
        /// 构造xmlAccess 对象
        /// </summary>
        /// <param name="fileName">xml文件名</param>
        public XMLAccess(string fileName)
        {
            LoadXML(strXMlfilepath + fileName);
        }

        /// <summary>
        /// 加载xml文件到内存
        /// </summary>
        /// <param name="fullFilePath">xml文件的完整路径包括文件名</param>
        /// <returns></returns>
        private bool LoadXML(string fullFilePath)
        {
            try
            {
                if (File.Exists(fullFilePath))
                {
                    elementObj = XElement.Load(fullFilePath);
                    return true;
                }
                else
                {
                    throw new DirectoryNotFoundException(fullFilePath + "文件不存在");

                }
            }
            catch (Exception e)
            {
                throw e;
            }
        }

        /// <summary>
        /// 取得对应元素(elementName) 的值,只取发现的第一个此元素的值
        /// </summary>
        /// <param name="elementName">元素</param>
        /// <returns>值</returns>
        public string GetElementValue(string elementName)
        {
            try
            {
                var chileElements = from ele in elementObj.Elements(elementName)
                                    select new { name = elementName, value = ele.Value };
                foreach (var item in chileElements)
                {
                    return item.value.Trim();
                }
                return "";

            }
            catch (Exception e)
            {
                throw e;
            }
        }

        private XElement elementObj;
        private string strXMlfilepath = System.Threading.Thread.GetDomain().BaseDirectory;  //取得执行文件所在目录
    }
}


<?xml version="1.0" encoding="gb2312"?>
<root>
    <!--Web所用数据库所在IP地址 -->
    <IP>10.10.49.13</IP>
    <!-- Web数据库 用户名-->
    <username>xopens</username>
    <!--Web数据库对应上述用户名的密码 -->
    <password>iscs200</password>
    <!--存取天气信息的间隔时间(单位分钟,最小10分钟) -->
    <interval>30</interval>
    <!-- 项目编号 -->
    <projectno>sy</projectno>
    <!--所取天气对应的城市代码 -->
    <citycode>101070101</citycode>
</root>

© 著作权归作者所有

共有 人打赏支持
RyanXing
粉丝 0
博文 21
码字总数 6521
作品 0
东城
项目经理
私信 提问
使用XmlReader读Xml

XmlDocument和XElement在读取Xml时要将整个Xml文档放到内存中去操作,这样做操作简单,但是很费内存和IO(可能是磁盘IO或者网络IO);而在有些场景下我们必须考虑尽可能节省内存和IO的开销,...

长平狐
2012/06/08
120
0
.Net那点事儿系列:C#操作Xml:通过XmlDocument读写Xml文档

.Net那点事儿系列:C#操作Xml 什么是Xml? Xml是扩展标记语言的简写,是一种开发的文本格式。关于它的更多情况可以通过w3组织了解http://www.w3.org/TR/1998/REC-xml-19980210。如果你不知道...

长平狐
2012/06/08
407
0
Java读取两个文件时识别文件中的相同内容

假设现在有两个定期抓取的file1.xml和file2.xml文件,每个文件都包含50条记录,两个文件区别在于它们的创建时间不同,file2.xml文件是在file1.xml创建后一小时才新生成的,file2.xml中还是5...

司徒春运
2011/07/31
2.1K
4
利用XML在不同数据库中交换数据

XML在不同语言,不同数据源中交换数据已经成为主流。在这些的DRP项目中,王勇也提到了使用XML在不同数据库中交换数据,达到安全,灵活的目的。不过他只是提到有这么一种方法,做了其中的一部...

晨曦之光
2012/02/22
0
0
LinqToXML~读XML文件续

上篇文章读了如何通过linq to xml去读取XML文件,而这讲主要通过linq to xml来读取由属性组件的XML文件,例如读取一个web.config的XML格式的配置文件,下面是config文件的部分内容: 下面...

mcy247
2017/12/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

windows上类似dnsmasq的软件Dual DHCP DNS Server

官网地址:http://dhcp-dns-server.sourceforge.net/官网定向的下载地址:https://sourceforge.net/projects/dhcp-dns-server/files/ 设置参考地址:http://blog.51cto.com/zhukeqiang/18264......

xueyuse0012
今天
1
0
LinkedHashMap源码解析

前言 HashMap中的元素时无序的,也就是说遍历HashMap的时候,顺序和放入的顺序是不一样的。 如果需要有序的Map,就可以采用LinkedHashMap. LinkedHashMap通过维护一个包含所有元素的双向链表,...

grace_233
今天
3
0
初识flask

文档 0.10.1版本 http://www.pythondoc.com/flask/index.html 1.0.2版本 https://dormousehole.readthedocs.io/en/latest/ 安装flask $ pip3 install flaskCollecting flask Downloading......

yimingkeji
昨天
4
0
Akka系统《sixteen》译

Actor是一个封装状态(state)和行为(behavior)的对象,它们只通过交换消息通信(放入收件人邮箱的邮件)。从某种意义上说,Actor是最严格的面向对象编程形式,但它更适合将他们视为人:在与Act...

woshixin
昨天
1
0
技术工坊|如何开发一款以太坊钱包(深圳)

【好消息!】HiBlock区块链技术工坊已经成功举办了26期,其中北京1期,西安1期,成都2期,上海22期。经常有社区的小伙伴问定期举办技术工坊的除了上海以外,其他城市有没有?现在区块链技术工...

HiBlock
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部