1

次のような、年とおそらく月のコンポーネントを含まない ISO 8601 日付を解析する必要があります。

--0412T102200Z 

例外をスローする次のコードを使用しようとしています '入力に年が存在する少なくとも部分的な日付が必要です。':

DateTimeOffset.ParseExact("--0412T102200Z", "'--'MMdd'T'HHmmssZ",
           CultureInfo.InvariantCulture, DateTimeStyles.None);

そのような日付を解析するにはどうすればよいですか? 解析する前に手動で「--」を年に置き換えないようにする機会はありますか?

4

1 に答える 1

3

XML XSD Schemasなどの特定の形式ではダッシュを年に置き換えることが許可される場合がありますが、これは技術的には ISO-8601 準拠の値ではありません。

この値が何を意味するのか自問してみてください。おそらく、「毎年、UTC のこの月、日、時刻に」という意味です。つまり、再発パターンです。

.NetDateTimeDateTimeOffset型は繰り返しパターンを保存できません。これらは、特定の日付と時刻を表すためのものです。

残念ながら、これを年なしで解析する方法はありません。最初にパターンを適用する年を決定し、ダッシュを手動で に置き換える必要があります。その後String.Replaceそれを解析できます。

于 2013-12-31T18:00:22.190 に答える