今天在做项目的时候需要到配置文件中读取信息,之前自己并没有操作过,今天算是完成自己的一个心愿。读取配置文件中的信息并不难,大致思路是:

1.载入配置文件,获取配置文件的实例。

2.获取配置文件的节点

3.筛选节点

在写入代码前要说明的是要先引用System.Xml空间

1.载入配置文件,获取配置文件的实例

public XmlDocument GetXmlDoc(string fileName)    // fileName其实是配置文件的绝对路径
{
XmlDocument returnValue = new XmlDocument();
returnValue.Load(fileName.Trim());
return returnValue;
}

2.获取配置文件的节点

public XmlNodeList GetNodeList(XmlDocument xmlDoc, string sPath)  //sPath是节点的路径,e.g:“/configuration/appSettings/add”
{
XmlNodeList returnValue = null;
returnValue = xmlDoc.SelectNodes(sPath.Trim());
return returnValue;
}

3.筛选节点

//循环节点
foreach (XmlNode xn in xmlNodes)
{
if ((xn.Attributes.Count > 0) && (xn.Attributes[keyName.Trim()].Value.Equals(keyValue.Trim())))   // keyName是键的名称,如:<add key="name" value="lisi">,keyName就是key,keyValue就是name
{
returnValue = xn.Attributes[aName.Trim()].Value.Trim();  // aName是value
break;
}
}

一个完整的方法代码如下:

public string GetAttributeValueByKey(string fName, string sPath, string keyName, string keyValue, string aName)
{
string returnValue = null;
//根据文件路径获取文件实例对像
XmlNodeList xmlNodes = this.GetNodeList(GetXmlDoc(fName), sPath);

//循环节点
foreach (XmlNode xn in xmlNodes)
{
if ((xn.Attributes.Count > 0) && (xn.Attributes[keyName.Trim()].Value.Equals(keyValue.Trim())))
{
returnValue = xn.Attributes[aName.Trim()].Value.Trim();
break;
}
}

return returnValue;
}

.Net FrameWork获取配置文件信息的更多相关文章

  1. SpringBoot项目中,获取配置文件信息

    1.在配置文件中设置信息,格式如下 wechat: mpAppId: wxdf2b09f280e6e6e2 mpAppSecret: f924b2e9f140ac98f9cb5317a8951c71 ...

  2. SpringBoot配置分析、获取到SpringBoot配置文件信息以及几种获取配置文件信息的方式

    Spring入门篇:https://www.cnblogs.com/biehongli/p/10170241.html SpringBoot的默认的配置文件application.properties ...

  3. 使用Spring注解获取配置文件信息

    需要加载的配置文件内容(resource.properties): #FTP相关配置 #FTP的IP地址 FTP_ADDRESS=192.168.1.121 FTP_PORT=21 FTP_USERN ...

  4. 获取配置文件信息——configparser

    配置文件host.int格式如下: [host]product=xxxxxxxxxxtest=xxxxxxxxxx python 3.x代码如下: import os,configparser def ...

  5. mybatis整合spring获取配置文件信息出错

    描述:mybatis整合spring加载jdbc.properties文件,然后使用里面配置的值来 配置数据源,后来发现用户变成了admin- jdbc.properties的配置: 加载配置: 报错 ...

  6. java获取配置文件信息

    两个类 package com.censoft.util; import java.util.Properties; import java.io.*; import java.util.ArrayL ...

  7. .Net Standard(.Net Core)实现获取配置信息

    一.前言 在.Net Framework框架有专门获取webconfig配置的方法供我们使用,但是在.Net Core或者.Net Standard中没有可以直接使用的方法来获取配置文件信息,下面就来 ...

  8. spring cloud --- config 配置中心 [本地、git获取配置文件]

    spring boot      1.5.9.RELEASE spring cloud    Dalston.SR1 1.前言 spring cloud config 配置中心是什么? 为了统一管理配 ...

  9. Java 获取到配置文件信息

    Java程序将数据库或者服务器IP写入到代码中,难免缺少灵活性. 如果写入到配置文件,部署到不通服务器上,只需要修改配置文 件即可. Java怎么读取配置文件 /** * 获取到配置文件信息 * @p ...

随机推荐

  1. odoo12 如何设置超级用户

    在odoo12的版本中,和之前的版本有点不一样的地方 在odoo12版本之前,每个实例都是使用户名为Administrator的默认用户来创建的. 在数据库中user_id是1. 在代码中,你会发现 ...

  2. SpringBoot 整合Mybatis操作数据库

    1.引入依赖: <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId> ...

  3. seafile部署安装

    安装epel源 yum install epel-release -y 安装docker yum install -y docker service docker start systemctl en ...

  4. Python从零开始——集合Set

    一:Python集合知识概览 二:Python的特性.格式.以及各序列结构对比 三:Python集合set的创建 四:集合常用操作之——添加元素 五:集合常见操作之——删除元素 六:集合常见操作之—— ...

  5. kibana和中文分词器analysis-ik的安装使用

    Centos7安装elasticSearch6 上面讲述了elasticSearch6的安装和使用教程. 下面讲一下elasticsearch6的管理工具Kibana. Kibana是一个开源的分析和 ...

  6. 201871010133-赵永军《面向对象程序设计(java)》第十二周学习总结

    201871010133-赵永军<面向对象程序设计(java)>第十二周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...

  7. git fatal: remote origin already exists错误解决方案

    $ git remote add origin git@github.com:AntonioSu/learngitWindows.git 在运行以上代码出现的错误,此错误是因为已经存在了远程分支,只需 ...

  8. oracle 行转列~列转行(几种方法)

    工作中,我们经常会碰到行转列的情况 这里我介绍几种简单的方法--行转列 1.oracle的pivot函数 原表 使用pivot函数: with temp as(select '四川省' nation ...

  9. day21_7.25 面向对象之继承

    一.继承 什么是继承? 继承是一种关系,就是描述两者之间什么是什么的关系. 在程序中,继承描述的是类与类之间的关系. 例如a如果继承了b,a就具备了b的所有变量与方法,可以直接调用. class B: ...

  10. InfoQ一波文章:菜鸟核心技术/Intel发布CPU新架构3D堆栈法/BDL/PaddlePaddle/百度第三代Spider/Tera

    菜鸟智慧新物流核心技术全解析   孟靖 阅读数:63192018 年 12 月 14 日 16:00   2018 年天猫双 11 全球狂欢节已正式落下帷幕,最终成交额定格在 2135 亿元,物流订单 ...