当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > asp.net 操作XML 按指定格式写入XML数据 WriteXml

ASP.NET
blog程序新版本V2.0 Beta完成,提供V1.0全部源码下载
“/”应用程序中的服务器错误
asp.net(c#)复数类(复数加减乘除四则运算)
asp.net(c#)不可访问,因为它受保护级别限制
asp.net(c#) 水仙花数
ASP.NET实现用图片进度条显示投票结果
asp.net(c#) MS AJAX的安装
asp.net(c#)有关 Session 操作的几个误区
ASP.net基础知识之常见错误分析
[.net] 操纵自如-页面内的配合与通信
c# static的全部用法收集整理
使CheckBoxList的Attributes属性生效(修改微软的一个bug)
在ASP.NET中使用Session常见问题集锦
[原创]完美解决Could not load file or assembly ''AjaxPro.2'' or one of its dependencies. 拒绝访问。
在Apache环境下成功的运行ASP.NET的注意事项
ClickOnce DIY全自动更新下载升级的自我实现
asp.net jscript 一句话木马
在ASP.Net中实现flv视频转换的代码
将DataTable中的一行复制到另一个DataTable的方法
在DataTable中执行Select("条件")后,返回DataTable的方法

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 69 ::
收藏到网摘: n/a

从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