2017-12-21 4 views
1

Webサービスから奇妙な日付形式を取得し、それを通常の日時に解析する方法が不思議です。C#Date非標準日付形式を解析する

サービスの結果:01-05T09:55MM-DD時間

この文字列は、それがDateTime.Parseに失敗した年はありませんので。

文字列関数を使用せずに現在の年にそれを取得する方法はありますか?

+3

使用 'ParseExact'と'あなたはフォーマットを提供することができDateTime.ParseExact'を試してみてください形式 – Equalsk

+2

を指定します。 –

+0

それは何日を表していますか(2017年〜2018年ですか? – mjwills

答えて

4

DateTime.ParseExactを試してみて、フォーマット提供:あなたが形式の下に使用することができます

string source = "01-05T09:55"; 

// 5 Jan 2017 (current year) 9:55 
DateTime result = DateTime.ParseExact(source, "M-d'T'H:m", CultureInfo.InvariantCulture); 
+0

しかし、来年の第三者に。 – AliK

+1

@AliKこれはあなたの直ちに問題とは無関係です。論理的な前提を自分で処理する必要があります。 –

+0

はい私はそうだと思います – AliK

0

を。

var date = "01-05T09:55"; 
var dateTime = DateTime.ParseExact(date, "MM-ddTHH:mm", CultureInfo.InvariantCulture); 
Console.WriteLine(dateTime); 

ここでは動作例を示します。

https://dotnetfiddle.net/S2nz1N

関連する問題