扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
使用DataSet类来完成这项任务。
创新互联一直通过网站建设和网站营销帮助企业获得更多客户资源。 以"深度挖掘,量身打造,注重实效"的一站式服务,以网站设计、网站建设、移动互联产品、网络营销推广服务为核心业务。10余年网站制作的经验,使用新网站建设技术,全新开发出的标准网站,不但价格便宜而且实用、灵活,特别适合中小公司网站制作。网站管理系统简单易用,维护方便,您可以完全操作网站资料,是中小公司快速网站建设的选择。
DataSet对象在传输时,是以XML流的形式而不是以COM形式传输的。DataSet对象可以读取XML数据文件或者数据流,从而将树型结构的XML数据转换成关系型的数据,如表(DataTable)、列(DataColumn)、行(DataRow)等。
在这个实例中,我们将XML文件命名为“xmlfile.xml”,具体内容如下:
?xml version=\"1.0\"standalone=”yes”?
Detail
Person
NameManish/Name
Age22/Age
/Person
/Detail \'用VB.NET读写XML文件
C1aSS WriteXML
Shared Sub main()
Dim obj DataSet As New System.Data.DataSet()
Dim strVirtualPath As String=”t.xml”
\'载入XML文件DataSet
objDataSet.ReadXml(”xmlfile.xml”)
\'通过控制器读取XML内容
Console.Write(objDataSet.GetXml)
\'从原XML文件中得到数据
ConSOle.Write(”Enter Name:”)
Dim fname,age As String
fname=ConS01e.ReadLine
\'写入你希望的代码
ConS01e.Write(”Enter Age:”)
age=Console.ReadLine
ConS0le.Write(fname&age)
Dim v(1)As String
v(0)=fname
V(1)=age
\'增加数据DataSet
objDataSet.Tables(0).Rows.Add(V)
\'更新XML文件
objDataSet.WriteXml(”xmlfile.xml”)
Console.Write(obj DataSet.GetXml)
End Sub
End C1ass
运行该程序有两种方式,一种是在Microso~VS.NET框架中编译完后运行;另一种则是在仿DOS的Command窗口中运行。在第一种方式中,必须加上System、System.Data、System.xML的引用。具体方法为:先创建一个空的项目,然后加入这个文件名字;在“解决方案资源管理器”中加入引用,此时需要选择相应的.dll文件;注意,xmlfile.xml文件应该放在工程的/bin目录下面。我们可以输出结果也可以用浏览器直接查看改变后的XML文件。在第二种方式中,选择桌面的“程序”一“Microso~Visual Studio.NET”一“VisualStudio.NET工具”一“Visual Studio.NET命令提示”命令,在DOS命令提示框敲入命令:[Page]
vbc/r:system.d11/r:system.data.d11/r:system.xml.d11 xml.vb其中,程序名为xml.vb,这里的3个.dll文件都是必须调用的库文件。应该在存放VB.NET文件的目录中运行上述命令,否则找不到相应的程序,当然设置PATH也可以做到。此外,Xml_vb文件应该和XML文件放在同一目录下面。每次运行此程序都会往文件中写进同样的内容,都是写入Person/,运行一次写一行。其实,我们只要稍微修改一下这个程序,就可以往XML中写入我们所需要的数据。
Dim xmlDoc As New System.Xml.XmlDocument
xmlDoc.Load("c:\xml.xml") '载入xml文件
Dim Items As Xml.XmlNodeList = xmlDoc.DocumentElement.SelectNodes("//record/item") '参数为xpath查询串,前面斜杠,//:表示任何结点,/:表示根结点
For Each s As Xml.XmlNode In Items
Console.WriteLine(s.Attributes.GetNamedItem("id").Value vbTab s.InnerText)
Next
先读取节点Match,然后读取节点内的各个属性值。 再进行节点中的子节点SetSetName的读取,读取方式也是直接读取各个属性值。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流