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

所属分类: 网络编程 / ASP.NET 阅读数: 1806
收藏 0 赞 0 分享

复制代码 代码如下:

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

更多精彩内容其他人还在看

ADO.NET实用经验汇总

这篇文章主要介绍了ADO.NET实用经验汇总,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

DataReader不能使用using的详细示例

这篇文章主要介绍了DataReader不能使用using的详细示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

asp.net MVC 在Controller控制器中实现验证码输出功能

这篇文章主要介绍了asp.net MVC 在Controller控制器中实现验证码输出功能,本文给大家介绍非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

.NET连接池的问题详解

这篇文章主要介绍了.NET连接池的问题详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

ASP.NET Core 3框架揭秘之 异步线程无法使用IServiceProvider问题

这篇文章主要介绍了ASP.NET Core 3框架揭秘之异步线程无法使用IServiceProvider问题,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

.Net Core3.0 WEB API中使用FluentValidation验证(批量注入)

这篇文章主要介绍了.Net Core3.0 WEB API中使用FluentValidation验证(批量注入),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

.NET Core3.1发布(翻译)

这篇文章主要介绍了.NET Core3.1发布(翻译),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

ASP.NET Core3.X 终端中间件转换为端点路由运行详解

这篇文章主要介绍了ASP.NET Core3.X 终端中间件转换为端点路由运行,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

浅谈ASP.NET Core的几种托管方式

这篇文章主要介绍了浅谈ASP.NET Core的几种托管方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

ASP.NET Core中快速构建PDF文档的步骤分享第1/2页

这篇文章主要给大家介绍了关于ASP.NET Core中快速构建PDF文档的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用ASP.NET Core具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享
查看更多