作者:秘色瓷2502891691 | 来源:互联网 | 2014-05-05 09:01
XML文件中的所有数据都以字符串来存储。当一个程序载进XML文件时,通常需要将数据转换为更加合适程序的类型。例如,假设订单装运日期存在一个XML文件里,则应用该文件的程序需要
XML文件中的所有数据都以字符串来存储。当一个程序载进XML文件时,通常需要将数据转换为更加合适程序的类型。
例如,假设订单装运日期存在一个XML文件里,则应用该文件的程序需要将字符串表现的数据转换为一个DateTime对象。VB.NET供给了XMLConvert类来协助这项工作,将XML转换成强类型的.NET数据。
XMLConvert位于System.XML命名空间中。其所有的方法和属性都是共享的,因此不用将实在例化就可以拜访他们。它包含了将XML字符串转换成日期、双精度、布尔值等其它数据类型的方法。
拿下面这个XML文件为例,我们会演示如何应用XMLConvert类来进行类型转换:
以下为引用的内容:
Test
123
1234.56
2003-01-01/
这段代码在C:\Temp目录中寻找名为Convert.xml的XML文件:
Dim xmlDoc As New System.Xml.XmlDocument()
xmlDoc.Load("c:\temp\Convert.xml")
Dim newString As String
newString = xmlDoc.SelectSingleNode("//String").InnerText
Debug.WriteLine(newString)
Dim newInteger As Integer
newInteger = System.Xml.XmlConvert.ToInt32( _
xmlDoc.SelectSingleNode("//Integer").InnerText)
Debug.WriteLine(newInteger)
Dim newDouble As Double
newDouble = System.Xml.XmlConvert.ToDouble( _
xmlDoc.SelectSingleNode("//Double").InnerText)
Debug.WriteLine(newDouble)
Dim newDate As DateTime
newDate = System.Xml.XmlConvert.ToDateTime( _
xmlDoc.SelectSingleNode("//Date").InnerText)
Debug.WriteLine(newDate)
所有的转换方法都是基于XML Schema所定义的数据类型。所转换的XML数据必需与XML Schema尺度一致。你可以在MSDN Library中找到更多的有关XML Schema类型和.NET的信息。