0
2016-09-02T16:18:54.000 UTC
のような日付を返すJavaクライアントを使用しています。エンディングが正確に標準フォーマットではないことに注目してください。問題の解析(ほとんど)C#での往復の種類の日付
私は、「UTC」私は成功した日付を解析することができますトリム場合:
DateTime.Parse("2016-09-02T16:18:54.000")
をが、結果の種類ではなく、UTC(明らかに)で、指定されていません。
DateTime.Parse("2016-09-02T16:18:54.000Z", CultureInfo.InvariantCulture, DateTimeStyles.RoundtripKind)
しかし、理想的に私は入力しないと混乱したい:私はそうのような「Z」と「UTC」を交換することによりことをバイパスすることができます。
はTryParseExactと異なるフォーマットでこれで突き刺しのカップルを取ったが、それぞれ1で失敗しました:DateTime.TryParseExact("2016-09-02T16:18:54.000 UTC", new [] {
"o",
"yyyy-MM-dd hh:mm:ss:fff UTC",
"yyyy-MM-ddhh:mm:ss:fff UTC",
"yyyy-MM-ddThh:mm:ss:fff UTC"
}, CultureInfo.InvariantCulture, DateTimeStyles.RoundtripKind, out startDate)
othersが正常にそれを使用しているので、私は(「UTC」キーワードは問題ではないかなり確信しています)のではなく、私が解析する方法を知っているように見えることはできません「T」があること:私は暗黙のうちに私の2番目のコードスニペットで使用されたと考えていなくても、「o」は形式が動作しているようです:
DateTime.TryParseExact("2016-09-02T16:18:54.000Z", "o", CultureInfo.InvariantCulture, DateTimeStyles.RoundtripKind, out startDate)
オペコードに関する@CodeCaster、彼の入力は「2016-09-02T16:18:54.000 UTC」ですか? – Pikoh
UTCの前のスペースは問題ではなく、hhの代わりにHHを使用して固定しました。 –
あなたは大丈夫です@AlexandruMarculescu – Pikoh