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
查看全文
相关阅读:
洛谷 P1231 教辅的组成
BZOJ 2190: [SDOI2008]仪仗队
Codeforces GYM 100741A . Queries
COGS 1298. 通讯问题
洛谷 P2604 [ZJOI2010]网络扩容
codevs 1227 方格取数 2
codevs 1004 四子连棋
洛谷 P2319 [HNOI2006]超级英雄
洛谷 P2153 [SDOI2009]晨跑
插入排序
原文地址:https://www.cnblogs.com/freemantc/p/304800.html
最新文章
asp.net 未能写入输出文件--“拒绝访问”的解决办法
Log4net源码View之Logger解析
eBay 消息发送(2)
eBay 消息发送(1)
DataMember IsRequired属性
Comon.Logging与Log4net联合使用
Android基础环境搭建
Linux基础命令(1)
Ubuntu 安装Redis体验
hdu 1787 GCD Again
热门文章
hdu 2588 GCD
hdu 1215 七夕节
hdu 1286 找新朋友
COGS 2685. 迷妹
codevs 1519 过路费
洛谷 P2894 [USACO08FEB]酒店Hotel
BZOJ 2242: [SDOI2011]计算器
COGS 1570. [POJ3461]乌力波
洛谷 P2234 [HNOI2002]营业额统计
COGS 74. [NOIP2006] 明明的随机数 (Splay小练习。。)
Copyright © 2011-2022 走看看