共用方式為


將字串轉換成 .NET 資料類型

若要將字串轉換成 .NET 資料類型,請使用符合應用程式需求的 XmlConvert 方法。 如需所有可用於 XmlConvert 類別的轉換方法清單,請參閱 XmlConvert

ToString 方法所傳回的字串是所傳入之資料的字串版本。 此外,還有幾個 .NET 類型是用 XmlConvert 類別來轉換,而不是使用 System.Convert 類別中的方法進行轉換。 XmlConvert 類別符合 XML 結構描述 (XSD) 資料型別規格,且擁有一個 XmlConvert 可對應的資料型別。

下列表格列出使用 XML 結構描述 (XSD) 資料類型對應傳回的 .NET 資料類型和字串類型。 這些 .NET Framework 類型無法使用 System.Convert 來處理。

.NET 類型 傳回的字串
布林值 "true"、"false"
Single.PositiveInfinity "INF"
Single.NegativeInfinity "-INF"
Double.PositiveInfinity "INF"
Double.NegativeInfinity "-INF"
Datetime 格式為 "yyyy-MM-ddTHH:mm:sszzzzzz" 及其子集。
Timespan 格式為 PnYnMnTnHnMnS,即 P2Y10M15DT10H30M20S 代表期間為 2 年 10 個月 15 天 10 小時 30 分鐘 20 秒。

注意

若使用 ToString 方法將上表所列的任何 .NET 類型轉換成字串,則傳回的字串將會是 XML 結構描述 (XSD) 字串類型,而不是基底類型。

DateTimeTimespan 數值型別的差別在於,DateTime 代表某一個時間,而 TimeSpan 代表時間間隔。 DateTimeTimespan 格式已指定於 XML 結構描述 (XSD) 資料型別規格中。 例如:

Dim writer As New XmlTextWriter("myfile.xml", Nothing)  
Dim [date] As New DateTime(2001, 8, 4)  
writer.WriteElementString("Date", XmlConvert.ToString([date]))  
XmlTextWriter writer = new XmlTextWriter("myfile.xml", null);  
DateTime date = new DateTime (2001, 08, 04);  
writer.WriteElementString("Date", XmlConvert.ToString(date));  

輸出

<Date>2001-08-04T00:00:00</Date>.

下列程式碼會將整數轉換成字串:

Dim writer As New XmlTextWriter("myfile.xml", Nothing)  
Dim value As Int32 = 200  
writer.WriteElementString("Number", XmlConvert.ToString(value))  
XmlTextWriter writer = new XmlTextWriter("myfile.xml", null);  
Int32 value = 200;  
writer.WriteElementString("Number", XmlConvert.ToString(value));  

輸出

<Number>200</Number>

不過,如果您將字串轉換成 BooleanSingleDouble,則傳回的 .NET 類型就會不同於使用 System.Convert 類別時所傳回的類型。

字串轉成 Boolean

下列表格說明使用 ToBoolean 方法將字串轉換成 Boolean 時,給定的輸入字串會產生哪種型別。

有效的字串輸入參數 .NET 輸出類型
"true" Boolean.True
「1」 Boolean.True
"false" Boolean.False
"0" Boolean.False

例如,假設有以下的 XML:

輸入

<Boolean>true</Boolean>  
<Boolean>1</Boolean>

這兩者都可由下列程式碼辨識,其中 bvalueSystem.Boolean.True

Dim bvalue As Boolean = _  
   XmlConvert.ToBoolean(reader.ReadElementString())  
Console.WriteLine(bvalue)  
Boolean bvalue = XmlConvert.ToBoolean(reader.ReadElementString());  
Console.WriteLine(bvalue);  

字串轉成 Single

下列表格說明使用 ToSingle 方法將字串轉換成 Single,給定的輸入字串會產生哪些型別。

有效的字串輸入參數 .NET 輸出類型
"INF" Single.PositiveInfinity
"-INF" Single.NegativeInfinity

字串轉成 Double

下列表格說明使用 ToDouble 方法將字串轉換成 Single,給定的輸入字串會產生哪些型別。

有效的字串輸入參數 .NET 輸出類型
"INF" Double.PositiveInfinity
"-INF" Double.NegativeInfinity

下列程式碼寫入 <Infinity>INF</Infinity>

Dim value As Double = Double.PositiveInfinity  
writer.WriteElementString("Infinity", XmlConvert.ToString(value))  
Double value = Double.PositiveInfinity;  
writer.WriteElementString("Infinity", XmlConvert.ToString(value));  

另請參閱