加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

asp.net 操作XML 按指定格式写入XML数据 WriteXml

发布时间:2021-07-22 16:11:26 所属栏目:编程 来源:互联网
导读:从SQL下载数据到本地为XML文件


Private Sub WriteXml()
Try
Create(strFName, "NewDataSet")
SaveXMLFile("gg", "NewDataSet", True)
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Private Function Create(ByVal FileName As String, ByVal Root As String) As Boolean
Dim NewXML As XmlTextWriter = Nothing
Irowcount = objDataSet.Tables("DataAnalyseVIEW").Rows.Count
Icolcount = objDataSet.Tables("DataAnalyseVIEW").Columns.Count
Try
NewXML = New XmlTextWriter(FileName, Nothing)
NewXML.Formatting = Formatting.Indented
NewXML.WriteStartDocument()
NewXML.WriteComment(My.Application.Info.AssemblyName & " Settings ") '项目名称
NewXML.WriteStartElement(Root)
NewXML.WriteStartElement(objDataSet.Tables("DataAnalyseVIEW").TableName.ToString())
NewXML.WriteStartElement(objDataSet.Tables("DataAnalyseVIEW").Columns(2).ColumnName().ToString())
NewXML.WriteString(objDataSet.Tables("SerialNumberTable").Rows(txtN)("SerialNumber").ToString())
NewXML.WriteEndElement()
NewXML.WriteStartElement(objDataSet.Tables("DataAnalyseVIEW").Columns(3).ColumnName().ToString())
NewXML.WriteString(objDataSet.Tables("DataAnalyseVIEW").Rows(0)("Client").ToString())
NewXML.WriteEndElement()
NewXML.WriteStartElement(objDataSet.Tables("DataAnalyseVIEW").Columns(5).ColumnName().ToString())
NewXML.WriteString(objDataSet.Tables("DataAnalyseVIEW").Rows(0)("Productor").ToString())
NewXML.WriteEndElement()
NewXML.WriteStartElement(objDataSet.Tables("DataAnalyseVIEW").Columns(6).ColumnName().ToString())
NewXML.WriteString(objDataSet.Tables("DataAnalyseVIEW").Rows(0)("Model").ToString())
NewXML.WriteEndElement()
NewXML.WriteStartElement(objDataSet.Tables("DataAnalyseVIEW").Columns(4).ColumnName().ToString())
NewXML.WriteString(objDataSet.Tables("DataAnalyseVIEW").Rows(0)("StationName").ToString())
NewXML.WriteEndElement()
NewXML.WriteStartElement(objDataSet.Tables("DataAnalyseVIEW").Columns(7).ColumnName().ToString())
NewXML.WriteString(objDataSet.Tables("DataAnalyseVIEW").Rows(0)("DataTime").ToString())
NewXML.WriteEndElement()
NewXML.WriteStartElement(objDataSet.Tables("DataAnalyseVIEW").Columns(8).ColumnName().ToString())
NewXML.WriteString(objDataSet.Tables("DataAnalyseVIEW").Rows(0)("status").ToString())
NewXML.WriteEndElement()
NewXML.WriteEndElement()
Progressbar1.Step = 1
Progressbar1.Value = 1
Progressbar1.Visible = True
For Irow = 0 To Irowcount - 1
Progress(Irowcount - 1)
NewXML.WriteStartElement(objDataSet.Tables("DataAnalyseVIEW").TableName.ToString())
For Icol = 0 To Icolcount - 1
If Icol < 2 Or Icol > 7 Then
NewXML.WriteStartElement(objDataSet.Tables("DataAnalyseVIEW").Columns(Icol).ColumnName().ToString)
NewXML.WriteString(objDataSet.Tables("DataAnalyseVIEW").Rows(Irow)(Icol).ToString())
NewXML.WriteEndElement()
End If
Next
NewXML.WriteEndElement()
Next
NewXML.WriteEndElement()
NewXML.WriteEndElement()
NewXML.Flush()
NewXML.Close()
Catch ex As Exception
Debug.Print("Create - " & ex.Message)
Return False
Finally
If NewXML IsNot Nothing Then
NewXML.Close()
NewXML = Nothing
End If
End Try
Return True
End Function
Private Function SaveXMLFile(ByVal aSection As String, ByVal aKey As String, ByVal aValue As String) As Boolean
Dim Paths() As String
Dim n As Integer
Dim Node, Node2 As XmlNode
Dim Ele As XmlElement
While Strings.Left(aSection, 1) = "/ "
aSection = Strings.Mid(aSection, 2)
End While
If aSection = " " Then
xmlDoc.DocumentElement.RemoveAll()
Else
Paths = Strings.Split(aSection, "/ ")
Try
Node = xmlDoc.DocumentElement.SelectSingleNode(Paths(n))
If Node Is Nothing Then
Ele = xmlDoc.CreateElement(Paths(n))
Node = xmlDoc.DocumentElement.AppendChild(Ele)
End If
For n = 1 To Paths.Length - 1
If Paths(n) = " " Then Continue For
Node2 = Node.SelectSingleNode(Paths(n))
If Node2 Is Nothing Then
Ele = xmlDoc.CreateElement(Paths(n))
Node2 = Node.AppendChild(Ele)
End If
Node = Node2
Next
If aKey = " " Then
Node.RemoveAll()
Else
Ele = Node.Item(aKey)
If Ele Is Nothing Then
Ele = xmlDoc.CreateElement(aKey)
Node.AppendChild(Ele)
End If
If aValue = " " Then
Node.RemoveChild(Ele)
Else
Ele.InnerText = aValue
End If
End If
Catch ex As Exception
Debug.Print(ex.Message)
Return False
End Try
End If
xmlDoc.Save(strFileName)
End Function

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读