エクスポート (0) 印刷
すべて展開
情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

DateTimeOffset.Parse メソッド (String, IFormatProvider)

2013/12/12

指定したカルチャ固有の書式情報を使用して、指定した日付と時刻の文字列形式を等価の DateTimeOffset の値に変換します。

Namespace:  System
アセンブリ:  mscorlib (mscorlib.dll 内)

public static DateTimeOffset Parse(
	string input,
	IFormatProvider formatProvider
)

パラメーター

input
型: System.String
変換する日付と時刻を含む文字列。
formatProvider
型: System.IFormatProvider
input に関するカルチャ固有の書式情報を提供するオブジェクト。

戻り値

型: System.DateTimeOffset
formatProvider で指定された書式に従って表記された、input に含まれる日時と等価のオブジェクト。

例外条件
ArgumentException

オフセットが 14 時間を超えているか、-14 時間未満です。

ArgumentNullException

inputnull です。

FormatException

input が、日付と時刻の有効な文字列形式を格納していません。

または

input に指定された文字列形式には、オフセット値しか含まれておらず、日付または時刻が存在しません。

このメソッドは、空白で区切られた 3 つの要素から成る文字列を解析します。要素は任意の順序で指定できます。この 3 つの要素を次の表に示します。

要素

使用例

<Date>

"2 / 10 / 2007"

<Time>

"1:02:03 PM"

<Offset>

"-7:30:15"

これらの各要素は省略可能ですが、<Offset> だけを単独で指定することはできません。必ず <Date> または <Time> と組み合わせて指定する必要があります。<Date> を省略した場合、現在の日付が既定値として使用されます。<Time> を省略した場合、12:00:00 AM が既定値として使用されます。<Offset> を省略した場合、ローカル タイム ゾーンのオフセットが既定値として使用されます。<Offset> には、世界協定時刻 (UTC) を基準とするオフセット値を正数または負数で指定できます。どちらの場合も、<Offset> は符号を付けて指定する必要があります。

この 3 つの要素の書式は、formatProvider パラメーターに次のいずれかを指定することによって定義します。

formatprovidernull の場合は、現在のカルチャに対応する CultureInfo オブジェクトを使用して、日付要素と時刻要素に使用できる特定の書式が決定されます。

<Offset> に使用する正負の符号は + または - であることが必要です。formatProvider パラメーターの NumberFormatInfo オブジェクトの PositiveSign プロパティまたは NegativeSign プロパティで定義することはできません。

次の例では、fr-fr カルチャの書式で表記された日付と時刻の文字列を解析し、それらをローカル システムの既定の en-us カルチャで表示しています。


DateTimeFormatInfo fmt = new CultureInfo("fr-fr").DateTimeFormat;
string dateString;
DateTimeOffset offsetDate;

dateString = "03-12-07";
offsetDate = DateTimeOffset.Parse(dateString, fmt);
outputBlock.Text += String.Format("{0} returns {1}",
                  dateString,
                  offsetDate.ToString()) + "\n";

dateString = "15/09/07 08:45:00 +1:00";
offsetDate = DateTimeOffset.Parse(dateString, fmt);
outputBlock.Text += String.Format("{0} returns {1}",
                  dateString,
                  offsetDate.ToString()) + "\n";

dateString = "mar. 1 janvier 2008 1:00:00 +1:00";
offsetDate = DateTimeOffset.Parse(dateString, fmt);
outputBlock.Text += String.Format("{0} returns {1}",
                  dateString,
                  offsetDate.ToString()) + "\n";
// The example displays the following output:
//    03-12-07 returns 12/3/2007 12:00:00 AM -08:00
//    15/09/07 08:45:00 +1:00 returns 9/15/2007 8:45:00 AM +01:00
//    mar. 1 janvier 2008 1:00:00 +1:00 returns 1/1/2008 1:00:00 AM +01:00                              


Windows Phone OS

サポート: 8.0, 7.1, 7.0

表示:
© 2015 Microsoft