zoukankan
html css js c++ java
读写类似web.config的xml格式文件
'
读写类似web.config的xml格式文件
Public
Class Config
Class
Config
私有成员变量
#Region
"私有成员变量"
'
配置文件路径
Private
sPath
As
String
'
配置文件对象(xml格式)
Private
xDoc
As
Xml.XmlDocument
#End Region
构造函数
#Region
"构造函数"
'
默认构造函数(取得当前目录下的app.config配置)
Public
Sub New()
Sub
New
()
Dim
assemblyFilePath
As
String
=
System.Reflection.Assembly.GetExecutingAssembly().Location
Dim
assemblyDirPath
As
String
=
System.IO.Path.GetDirectoryName(assemblyFilePath)
Dim
configFilePath
As
String
=
assemblyDirPath
&
"
\app.config
"
sPath
=
configFilePath
xDoc
=
New
XmlDocument
xDoc.Load(sPath)
End Sub
'
用户指定配置文件的构造函数
Public
Sub New()
Sub
New
(
ByVal
s_Path
As
String
)
sPath
=
s_Path
xDoc
=
New
XmlDocument
xDoc.Load(sPath)
End Sub
#End Region
公共接口
#Region
"公共接口"
'
'' -----------------------------------------------------------------------------
'
'' <summary>
'
'' 读取属性
'
'' </summary>
'
'' <param name="keyName">属性名称</param>
'
'' <returns>属性值</returns>
'
'' -----------------------------------------------------------------------------
Public
Function GetValue()
Function
GetValue(
ByVal
keyName
As
String
)
As
String
Dim
str
As
String
=
""
Dim
xElement
As
XmlElement
=
getElement(keyName)
If
Not
xElement
Is
Nothing
Then
str
=
xElement.GetAttribute(
"
value
"
)
End
If
Return
str
End Function
'
'' -----------------------------------------------------------------------------
'
'' <summary>
'
'' 设置属性
'
'' </summary>
'
'' <param name="keyName">属性名称</param>
'
'' <param name="keyValue">属性值</param>
'
'' <param name="bCreate">新增标志(为True的时候当属性不存在时则新增这个属性,默认为False)</param>
'
'' <returns>成功返回True,反之为False</returns>
'
'' -----------------------------------------------------------------------------
Public
Function SetValue()
Function
SetValue(
ByVal
keyName
As
String
,
ByVal
keyValue
As
String
,
Optional
ByVal
bCreate
As
Boolean
=
False
)
As
Boolean
Dim
flag
As
Boolean
=
True
Try
Dim
xElement
As
XmlElement
=
getElement(keyName)
If
Not
xElement
Is
Nothing
Then
xElement.SetAttribute(
"
value
"
, keyValue)
ElseIf
bCreate
Then
Dim
xNode
As
XmlNode
=
getXmlNode()
xElement
=
xDoc.CreateElement(
"
add
"
)
xElement.SetAttribute(
"
key
"
, keyName)
xElement.SetAttribute(
"
value
"
, keyValue)
xNode.AppendChild(xElement)
End
If
xDoc.Save(sPath)
Catch
flag
=
False
End
Try
Return
flag
End Function
#End Region
私有成员
#Region
"私有成员"
'
取得单个元素
Private
Function getElement()
Function
getElement(
ByVal
elemName
As
String
)
As
XmlElement
Dim
xElement
As
XmlElement
Try
Dim
node
As
XmlNode
=
getXmlNode()
xElement
=
CType
(node.SelectSingleNode((
"
//add[@key='
"
&
elemName
&
"
']
"
)), XmlElement)
Catch
xElement
=
Nothing
End
Try
Return
xElement
End Function
'
取得节点
Private
Function getXmlNode()
Function
getXmlNode()
As
XmlNode
Return
xDoc.SelectSingleNode(
"
//appSettings
"
)
End Function
#End Region
End Class
查看全文
相关阅读:
Lambda 方法引用
day7面向对象--进阶
day6作业--选课系统
day6面向对象--继承、多态
day6面向对象
day5模块学习--hashlib模块
day5模块学习--configparser模块
day5模块学习--yaml文件处理
day5模块学习--XML模块
day5模块学习--shelve模块
原文地址:https://www.cnblogs.com/freemantc/p/304800.html
最新文章
wireshark 相关提示
python--递归函数讲解
python--冒泡排序
python实现用户登录、注册实例
python文件操作
python-随机生成验证码实例
day008-python内置函数
day007-python函数之课后作业讲解
day006-python函数
day005-python基础数据类型之课后作业讲解
热门文章
day004-python运算符与基本数据类型
spring boot actuator服务监控与管理
Apollo 高可用配置中心搭建教程
linux jdk环境变量配置
Access denied for user ''@'localhost' to database 'mysql'
springcloud eureka注册中心搭建
springboot 整合logback
An incompatible version [1.1.33] of the APR based Apache Tomcat Native library is installed, while Tomcat requires version [1.2.14]
HTTP GET请求302重定向问题
java CRC16 算法
Copyright © 2011-2022 走看看