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
查看全文
相关阅读:
获得树形json串
淘宝分布式 key/value 存储引擎Tair安装部署过程及Javaclient測试一例
ARC下dealloc过程及.cxx_destruct的探究
连类比事-category和extension
category和关联对象
静态构造函数c# 静态块java initallize oc
+ (void)initialize vs 静态构造方法
Servlet中文乱码原因 解决 Get 和 Post 和客户端
double int 类型的区别
待解决问题 oc
原文地址:https://www.cnblogs.com/freemantc/p/304800.html
最新文章
2016第22周二
2016第22周一
WIP jobs available to MRP
sort功能使用
C++设计模式--观察员
python基础课程_2学习笔记3:图形用户界面
hdu2222Keywords Search (特里)
linux系统启动过程的列表
Android 通过调用系统,如接口 谷歌语音、百度语音、科大讯飞语音等语音识别方法对话框
ORA-00600: 内部错误代码, 参数: [kqlnrc_1]
热门文章
nginx学习12 ngx_cycle_t 和 ngx_init_cycle
extjs_11_mvc模式
C#-循环滚动字幕,timer,从左至右,从右至左,暂停---ShinePans
让你提前认识软件开发(35):怎样改动SQL脚本以完毕需求?
C++习题 虚函数-计算图形面积
站点分析基础概念网页浏览数
【Unity Shaders】使用CgInclude让你的Shader模块化——Unity内置的CgInclude文件
Leetcode 细节实现 Set Matrix Zeroes
一起来开发Android的天气软件(四)——使用Gson解析数据
使用Google Roads API抓取道路信息(java实现)
Copyright © 2011-2022 走看看