2010-12-16 8 views
0

"a.m"に書式設定された時刻を表示するためにCultureInfoクラス(または必要なもの)を使用する方法に関する情報が見つかりません。と "p.m." (ピリオドに注意してください)。"a.m."を使用するC#時間形式と "p.m." AM/PMの代わりに?

まず、 "a.m。"/"p.m。"の使用を取り巻く文化情報はどれですか。 AM/PMの代わりに?文字列の置換などのハックではなく、フォーマットプロバイダを使用してこれを行う方法はありますか?ありがとう。

答えて

6

DateTimeFormatInfo classで公開されているものを見てください。CultureInfo.DateTimeFormatプロパティで公開されています。 AMDesignatorPMDesignatorプロパティを使用すると、これらの値に使用する文字列を設定できます。

は特に、そのリンクの備考セクションに特に注意してください:

アプリケーションが 書き込み可能なのDateTimeFormatInfoオブジェクトの関連するプロパティを設定 して、カスタムパターンを持つ標準 パターンを置き換えることができます。 にDateTimeFormatInfo オブジェクトが書き込み可能かどうかを判断するには、アプリケーション にIsReadOnlyプロパティを使用する必要があります。

あなたは、現在の不変、または特定の培養物からのCultureInfoとその子情報オブジェクトを引く場合は、読み取り専用にするために、デフォルトでは傾向があります。これらのオブジェクトに対してClone()メソッドを使用して、返され書式文字列を設定するために使用できる書込み可能なコピーを取得する準備をしてください。

あなたが任意に設定AM/PM特性を有するDateTimeFormatInfoを持っていたら、String.Format()Object.ToString()のような方法で使用されるIFormatProviderとしてそれを供給することができます。

+1

+1私にそれを打つ:) – markt

+0

+1、また私にそれを打つ – Marlon

関連する問題