''' <summary>
''' 创建XML文件
''' </summary>
''' <param name="xmlFileName">要创建的XML文件名</param>
''' <remarks></remarks>
Private Sub createXML(
ByVal xmlFileName
As String)
Try Dim writer
As New Xml.XmlTextWriter(Application.StartupPath & "" & xmlFileName, System.Text.Encoding.GetEncoding("utf-8"))
'使用自动缩进便于阅读
writer.Formatting = Xml.Formatting.Indented
writer.WriteRaw("<?xml version=""1.0"" encoding=""utf-8"" ?>")
'书写根元素()
writer.WriteStartElement("Config")
'添加次级元素
writer.WriteStartElement("DatabaseSetting")
'添加子元素()
writer.WriteElementString("DataSource",
Me.cmbHostName.SelectedItem.ToString.Trim)
'为Datasource添加一个属性为value,值为test 的属性
'writer.WriteAttributeString("value","test")
writer.WriteElementString("InitialCatalog",
Me.cmbDatabaseName.SelectedItem.ToString.Trim)
writer.WriteElementString("UserID",
Me.txtUserName.Text.Trim)
writer.WriteElementString("Password",
Me.txtPassword.Text.Trim)
'关闭次级元素DatabaseSetting
writer.WriteEndElement()
'添加次级元素StationSetting
writer.WriteStartElement("StationSetting")
'添加子元素
writer.WriteElementString("StoreID",
Me.cmbStoreID.SelectedItem.ToString.Trim)
writer.WriteElementString("StationID",
Me.cmbStationID.SelectedItem.ToString.Trim)
'关闭次级元素StationSetting
writer.WriteEndElement()
'关闭根元素
writer.WriteFullEndElement()
'将XML写入文件并关闭writer
writer.Close()
Catch ex
As Exception
MsgBox(ex.Message & vbCrLf & ex.StackTrace)
End Try End Sub ''' <summary>
''' 修改XML
''' </summary>
''' <param name="xmlFileName">要修改的XML文件名</param>
''' <param name="rootName">XML文件中的根元素名称</param>
''' <param name="elementNameArry">要修改的元素数组</param>
''' <param name="innerTextArry">对应于要修改的元素数组的修改文本数组</param>
''' <remarks></remarks>
Public Sub modifXML(
ByVal xmlFileName
As String,
ByVal rootName
As String,
ByVal elementNameArry()
As String,
ByVal innerTextArry()
As String)
If My.Computer.FileSystem.FileExists(Application.StartupPath.Trim & "" & xmlFileName)
Then Dim doc
As New Xml.XmlDocument
doc.Load(Application.StartupPath.Trim & "" & xmlFileName)
Dim list
As Xml.XmlNodeList = doc.SelectSingleNode(rootName).ChildNodes
For Each xn
As Xml.XmlNode
In list
Dim xe
As Xml.XmlElement
xe = xn
Dim nls
As Xml.XmlNodeList = xe.ChildNodes
For Each xn1
As Xml.XmlNode
In nls
Dim xe2
As Xml.XmlElement
xe2 = xn1
For i
As Integer = 0
To elementNameArry.Length - 1
If xe2.Name = elementNameArry(i)
Then xe2.InnerText = innerTextArry(i)
End If Next Next Next doc.Save(Application.StartupPath.Trim & "" & xmlFileName)
End If End Sub ''' <summary>
''' 读取XML文件
''' </summary>
''' <param name="xmlFileName">要读取的XML文件名</param>
''' <remarks></remarks>
Private Sub readXMl(
ByVal xmlFileName
As String)
Try If My.Computer.FileSystem.FileExists(Application.StartupPath & "" & xmlFileName)
Then Dim doc
As New Xml.XmlDocument
doc.Load(Application.StartupPath.Trim & "" & xmlFileName)
Dim re
As Xml.XmlNodeReader =
New Xml.XmlNodeReader(doc)
Dim tmpStr
As String = ""
Dim name
As String While re.Read
Select Case re.NodeType
Case Xml.XmlNodeType.Element
name = re.Name
Case Xml.XmlNodeType.Text
If name.Equals("DataSource")
Then tmpStr = tmpStr & "Data Source=" & re.Value
End If If name.Equals("InitialCatalog")
Then tmpStr = tmpStr & ";Initial Catalog=" & re.Value
End If If name.Equals("UserID")
Then tmpStr = tmpStr & ";User ID=" & re.Value
End If If name.Equals("Password")
Then tmpStr = tmpStr & ";Password=" & re.Value
End If End Select End While End If Catch ex
As Exception
MsgBox(ex.Message & vbCrLf & ex.StackTrace)
End Try End Sub
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。