0

こんにちは、文字列 2300H があります。これを標準の日時 (Datetime) C# のオブジェクトに変換したい これを達成するにはどうすればよいですか?

4

3 に答える 3

4

時間部分のみを扱っている場合は、次のようにParseExactを使用してTimeSpan構造体に入れる方がよい場合があります。

http://msdn.microsoft.com/en-us/library/dd992370.aspx

LBが提供したコードは、DateTimeでそれを提供しますが、日、月、年のものに対して正確ではない値を取得することになります。デザインに適している場合は、同じコードを使用して、代わりにTimeSpanに情報を保存できます。

var timeSpan = TimeSpan.ParseExact("2300H", @"hhmm\H", CultureInfo.InvariantCulture);
于 2012-11-19T15:30:08.183 に答える
3
var dt = DateTime.ParseExact("2300H", @"HHmm\H", CultureInfo.InvariantCulture);

時間が必要な場合

var time = dt.TimeOfDay;
于 2012-11-19T15:32:26.513 に答える
1

DateTime以下は、日付が現在の日付で、種類が指定されておらず、時刻が指定された時刻 (23:00) に等しい を返します。

string s = "2300H";
DateTime d = DateTime.ParseExact(s, @"HHmm\H", CultureInfo.InvariantCulture);

または、次の例ではDateTime、日付が 0001 年 1 月 1 日で、種類が指定されておらず、時刻が指定された時刻 (23:00) に等しい が返されます。

DateTime.ParseExact(s, @"HHmm\H", CultureInfo.InvariantCulture, DateTimeStyles.NoCurrentDateDefault);
于 2012-11-19T15:36:57.343 に答える