XmlConvert.ToDateTimeOffset Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Преобразует предоставленное значение String в эквивалентное значение DateTimeOffset.
Перегрузки
ToDateTimeOffset(String, String[]) |
Преобразует предоставленное значение String в эквивалентное значение DateTimeOffset. |
ToDateTimeOffset(String, String) |
Преобразует предоставленное значение String в эквивалентное значение DateTimeOffset. |
ToDateTimeOffset(String) |
Преобразует предоставленное значение String в эквивалентное значение DateTimeOffset. |
ToDateTimeOffset(String, String[])
Преобразует предоставленное значение 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
может быть любым подмножеством в соответствии с рекомендациями консорциума W3C для типа XML dateTime. (Дополнительные сведения см. в разделе dateTime спецификации схемы XML.) Строка 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.
Если в дробных секундах указано более семи цифр, значение округляется. Например, 00000004 становится 0000000, а 00000005 становится 0000001.
Применяется к
ToDateTimeOffset(String, String)
Преобразует предоставленное значение 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
. Параметр формата может быть любым поднабором в соответствии с рекомендацией W3C для типа XML dateTime. (Дополнительные сведения см. в разделе dateTime спецификации схемы XML.) Строка 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.
Если в дробных секундах указано более семи цифр, значение округляется. Например, 00000004 становится 0000000, а 00000005 становится 0000001.
Применяется к
ToDateTimeOffset(String)
Преобразует предоставленное значение 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
Параметры
- s
- String
Преобразуемая строка. Строка должна соответствовать подмножеству рекомендации W3C для типа даты и времени XML. Дополнительные сведения см. в разделе dateTime спецификации схемы XML.
Возвращаемое значение
Эквивалент указанной строки DateTimeOffset.
Исключения
s
имеет значение null
.
Аргумент, переданный этому методу, находится вне диапазона допустимых значений. Сведения о допустимых значениях см. в разделе DateTimeOffset.
Аргумент, переданный этому методу, не соответствует подмножеству рекомендаций W3C для типа XML dateTime. Дополнительные сведения см. в разделе dateTime спецификации схемы XML.
Примеры
В следующем примере показано, как считывать строку из 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>
Комментарии
Если в дробных секундах указано более семи цифр, значение округляется. Например, 00000004 становится 0000000, а 00000005 становится 0000001.