2016-12-26 7 views
0

私が与えた形式に戻したいが、それは変わらない。 Webサービスはこの形式でのみ動作します。C#DateTime形式yyyy-MM-dddd

インスタント= "2016-12-26T08:20:37.494 + 03:00"

DateTime fDate = DateTime.ParseExact(DateTime.Now.ToString(), "yyyy-MM-dd", System.Globalization.CultureInfo.InstalledUICulture); 

req.AP_Info.Instant = fDate; 

私は上記のコードを書いたが、私はエラーを取得します。 私のコンピュータの言語はトルコ語です。

私はたいフォーマット:2016年12月26日

おかげ

答えて

0

のDateTimeは日付と時刻が、DateTimeオブジェクトを表しタイプですそれ自体は特定の出力形式を持っていません。 実際には、ToString()メソッドを呼び出すことによって、さまざまな出力形式でDateTimeで表される日付を表示できますが、実際のDateTimeオブジェクトの形式は変更されません。これは、指定された形式を使用して日付の文字列表現を作成するだけです。

あなたはYYYY-MM-DDの日付を表す文字列を持っている場合は、DateTime.ParseExactのこのような方法で使用したDateTimeに変換できますするIFormatProviderを確認しますとしてCultureInfo.InvariantCultureを使用して

string date = DateTime.Now.ToString("yyyy-MM-dd", System.Globalization.CultureInfo.InvariantCulture); 
DateTime fDate = DateTime.ParseExact(date, "yyyy-MM-dd", System.Globalization.CultureInfo.InvariantCulture); 

を現在のスレッドのカルチャ設定に関係なく機能することを確認します。

ただし、インスタントプロパティのタイプがStringではなくDateTimeである場合、DateTimeプロパティはDateTimeオブジェクトにのみ設定でき、DateTimeオブジェクトには特定のフォーマットがないため、フォーマットを気にする必要はありません。

+0

https://s23.postimg.org/42m2730x7/datetime.png 返信いただきありがとうございます。私はウェブサービスの世話をします。画像のような結果があります。 –

3

利用DateTime.ToString()方法:

DateTime fDate = DateTime.ParseExact(DateTime.Now.ToString(), "yyyy-MM-dd", System.Globalization.CultureInfo.InstalledUICulture); 
string myformatted = fDate.ToString("yyyy-MM-dd"); 
+0

DateTimeを返します。これはStringではありません。 –

+0

DateTime fDate = DateTime.ParseExact(DateTime.Now.ToString()、 "yyyy-MM-dd"、System.Globalization.CultureInfo.InstalledUICulture); 上記のコードは間違いです。 –