XmlConvert.ToDateTimeOffset 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将提供的 String 转换为等效的 DateTimeOffset。
重载
ToDateTimeOffset(String, String[]) |
将提供的 String 转换为等效的 DateTimeOffset。 |
ToDateTimeOffset(String, String) |
将提供的 String 转换为等效的 DateTimeOffset。 |
ToDateTimeOffset(String) |
将提供的 String 转换为等效的 DateTimeOffset。 |
ToDateTimeOffset(String, String[])
- Source:
- XmlConvert.cs
- Source:
- XmlConvert.cs
- Source:
- XmlConvert.cs
将提供的 String 转换为等效的 DateTimeOffset。
public:
static DateTimeOffset ToDateTimeOffset(System::String ^ s, cli::array <System::String ^> ^ formats);
public static DateTimeOffset ToDateTimeOffset (string s, string[] formats);
static member ToDateTimeOffset : string * string[] -> DateTimeOffset
Public Shared Function ToDateTimeOffset (s As String, formats As String()) As DateTimeOffset
参数
- s
- String
要转换的字符串。
- formats
- String[]
可以转换 s
的格式数组。
formats
中的每个格式均可以是 XML DateTime 类型的 W3C 建议的任何子集。 (有关详细信息,请参阅 XML 架构规范的 dateTime 部分。)将根据这些格式中的一个格式验证字符串 s
。
返回
与提供的字符串等效的 DateTimeOffset。
示例
下面的示例演示如何从 XML 文件中读取字符串,并使用 ToDateTimeOffset 方法将该字符串转换为 DateTimeOffset 类型。 在转换之前,输入字符串必须针对指定格式之一进行验证。
using System;
using System.Xml;
class Example
{
static void Main()
{
// Create an XmlReader, read to the "time" element, and read contents as type string
XmlReader reader = XmlReader.Create("transactions.xml");
reader.ReadToFollowing("time");
string time = reader.ReadElementContentAsString();
// Specify formats against which time will be validated before conversion to DateTimeOffset
// If time does not match one of the specified formats, a FormatException will be thrown.
// Each specified format must be a subset of the W3C Recommendation for the XML dateTime type
string[] formats = {"yyyy-MM-ddTHH:mm:sszzzzzzz", "yyyy-MM-ddTHH:mm:ss", "yyyy-MM-dd"};
try
{
// Read the element contents as a string and covert to DateTimeOffset type
DateTimeOffset transaction_time = XmlConvert.ToDateTimeOffset(time, formats);
Console.WriteLine(transaction_time);
}
catch (Exception e)
{
Console.WriteLine(e);
}
}
}
Imports System.Xml
Module Module1
Sub Main()
' Create an XmlReader, read to the "time" element, and read contents as type string
Dim reader As XmlReader = XmlReader.Create("transactions.xml")
reader.ReadToFollowing("time")
Dim time As String = reader.ReadElementContentAsString()
' Specify formats against which time will be validated before conversion to DateTimeOffset
' If time does not match one of the specified formats, a FormatException will be thrown.
' Each specified format must be a subset of the W3C Recommendation for the XML dateTime type
Dim formats As String() = {"yyyy-MM-ddTHH:mm:sszzzzzzz", "yyyy-MM-ddTHH:mm:ss", "yyyy-MM-dd"}
Try
' Read the element contents as a string and covert to DateTimeOffset type
Dim transaction_time As DateTimeOffset = XmlConvert.ToDateTimeOffset(time, formats)
Console.WriteLine(transaction_time)
Catch e As Exception
Console.WriteLine(e)
End Try
End Sub
End Module
该示例使用 transactions.xml 文件。
<?xml version="1.0"?>
<transactions>
<transaction>
<id>123456789</id>
<amount>1.00</amount>
<currency>USD</currency>
<time>2007-08-03T22:05:13-07:00</time>
</transaction>
</transactions>
注解
如果在输入字符串中指定的偏移量将导致 DateTimeOffset 的反序列化表示形式溢出,则会引发 FormatException。
如果为秒的小数部分指定了 7 位以上的数字,则值将四舍五入。 例如,00000004变为 0000000,00000005变为0000001。
适用于
ToDateTimeOffset(String, String)
- Source:
- XmlConvert.cs
- Source:
- XmlConvert.cs
- Source:
- XmlConvert.cs
将提供的 String 转换为等效的 DateTimeOffset。
public:
static DateTimeOffset ToDateTimeOffset(System::String ^ s, System::String ^ format);
public static DateTimeOffset ToDateTimeOffset (string s, string format);
static member ToDateTimeOffset : string * string -> DateTimeOffset
Public Shared Function ToDateTimeOffset (s As String, format As String) As DateTimeOffset
参数
- s
- String
要转换的字符串。
- format
- String
从中转换 s
的格式。 该格式参数可以是 XML DateTime 类型的 W3C 建议的任何子集。 (有关详细信息,请参阅 XML 架构规范的 dateTime 部分。)将根据此格式验证字符串 s
。
返回
与提供的字符串等效的 DateTimeOffset。
例外
s
为 null
。
s
或 format
是一个空字符串或者未采用指定的格式。
示例
下面的示例演示如何从 XML 文件中读取字符串,并使用 ToDateTimeOffset 方法将该字符串转换为 DateTimeOffset 类型。 在转换之前,将针对指定的格式验证输入字符串。
using System;
using System.Xml;
class Example
{
static void Main()
{
// Create an XmlReader, read to the "time" element, and read contents as type string
XmlReader reader = XmlReader.Create("transactions.xml");
reader.ReadToFollowing("time");
string time = reader.ReadElementContentAsString();
// Specify a format against which time will be validated before conversion to DateTimeOffset
// If time does not match the format, a FormatException will be thrown.
// The specified format must be a subset of the W3C Recommendation for the XML dateTime type
string format = "yyyy-MM-ddTHH:mm:sszzzzzzz";
try
{
// Read the element contents as a string and covert to DateTimeOffset type
DateTimeOffset transaction_time = XmlConvert.ToDateTimeOffset(time, format);
Console.WriteLine(transaction_time);
}
catch(Exception e)
{
Console.WriteLine(e);
}
}
}
Imports System.Xml
Module Module1
Sub Main()
' Create an XmlReader, read to the "time" element, and read contents as type string
Dim reader As XmlReader = XmlReader.Create("transactions.xml")
reader.ReadToFollowing("time")
Dim time As String = reader.ReadElementContentAsString()
' Specify a format against which time will be validated before conversion to DateTimeOffset
' If time does not match the format, a FormatException will be thrown.
' The specified format must be a subset of the W3C Recommendation for the XML dateTime type
Dim format As String = "yyyy-MM-ddTHH:mm:sszzzzzzz"
Try
' Read the element contents as a string and covert to DateTimeOffset type
Dim transaction_time As DateTimeOffset = XmlConvert.ToDateTimeOffset(time, format)
Console.WriteLine(transaction_time)
Catch e As Exception
Console.WriteLine(e)
End Try
End Sub
End Module
该示例使用 transactions.xml 文件。
<?xml version="1.0"?>
<transactions>
<transaction>
<id>123456789</id>
<amount>1.00</amount>
<currency>USD</currency>
<time>2007-08-03T22:05:13-07:00</time>
</transaction>
</transactions>
注解
如果在输入字符串中指定的偏移量将导致 DateTimeOffset 的反序列化表示形式溢出,则会引发 FormatException。
如果为秒的小数部分指定了 7 位以上的数字,则值将四舍五入。 例如,00000004变为 0000000,00000005变为0000001。
适用于
ToDateTimeOffset(String)
- Source:
- XmlConvert.cs
- Source:
- XmlConvert.cs
- Source:
- XmlConvert.cs
将提供的 String 转换为等效的 DateTimeOffset。
public:
static DateTimeOffset ToDateTimeOffset(System::String ^ s);
public static DateTimeOffset ToDateTimeOffset (string s);
static member ToDateTimeOffset : string -> DateTimeOffset
Public Shared Function ToDateTimeOffset (s As String) As DateTimeOffset
参数
返回
与提供的字符串等效的 DateTimeOffset。
例外
s
为 null
。
传递给此方法的参数不在允许值的范围内。 有关允许值的信息,请参见 DateTimeOffset。
传递给此方法的参数不符合 XML DateTime 类型的 W3C 建议的子集。 有关详细信息,请参阅 XML 架构规范的 dateTime 部分。
示例
下面的示例演示如何从 XML 文件中读取字符串,并使用 ToDateTimeOffset 方法将该字符串转换为 DateTimeOffset 类型。
using System;
using System.Xml;
class Example
{
static void Main()
{
// Create an XmlReader, read to the "time" element, and read contents as type string
XmlReader reader = XmlReader.Create("transactions.xml");
reader.ReadToFollowing("time");
string time = reader.ReadElementContentAsString();
// Read the element contents as a string and covert to DateTimeOffset type
// The format of time must be a subset of the W3C Recommendation for the XML dateTime type
DateTimeOffset transaction_time = XmlConvert.ToDateTimeOffset(time);
Console.WriteLine(transaction_time);
}
}
Imports System.Xml
Module Module1
Sub Main()
' Create an XmlReader, read to the "time" element, and read contents as type string
Dim reader As XmlReader = XmlReader.Create("transactions.xml")
reader.ReadToFollowing("time")
Dim time As String = reader.ReadElementContentAsString()
' Read the element contents as a string and covert to DateTimeOffset type
' The format of time must be a subset of the W3C Recommendation for the XML dateTime type
Dim transaction_time As DateTimeOffset = XmlConvert.ToDateTimeOffset(time)
Console.WriteLine(transaction_time)
End Sub
End Module
该示例使用 transactions.xml 文件。
<?xml version="1.0"?>
<transactions>
<transaction>
<id>123456789</id>
<amount>1.00</amount>
<currency>USD</currency>
<time>2007-08-03T22:05:13-07:00</time>
</transaction>
</transactions>
注解
如果为秒的小数部分指定了 7 位以上的数字,则值将四舍五入。 例如,00000004变为 0000000,00000005变为0000001。