1

私はWindows8を使用しています。私の文化は「en-IN」です。ただし、日時の形式はMM / dd/yyyyです

String.Format("{0:MM/dd/yyyy}", DateTime.Today);

2012年12月29日のような形式を提供します。

どうすればよいか提案してください。

4

5 に答える 5

7

問題が何であるかは明らかではありません。スラッシュの代わりにハイフンを使用しているだけの場合は、おそらく、カルチャのデフォルトの日付区切り文字がハイフンであるためです。オプションは次のとおりです。

  • 別のカルチャを明示的に指定します(例:不変カルチャ)

    String.Format(CultureInfo.InvariantCulture, "{0:MM/dd/yyyy}", DateTime.Today);
    
  • スラッシュをエスケープします。

    String.Format("{0:MM'/'dd'/'yyyy}", DateTime.Today);
    

IMOを使用DateTime.Today.ToString(...)するよりも使用する方が簡単であることに注意してください。string.Format

于 2012-12-29T08:33:20.337 に答える
1

そうですね、現在のカルチャは多くのフォーマット関連の設定に使用されています。

ここで、これを試してください:

// Change culture
Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-IN");
Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("en-IN");

// prints 12-29-2012
Console.WriteLine(string.Format("{0:MM/dd/yyyy}", DateTime.Today));

// Invariant culture, so ignore any culture-based settings
// prints 12/29/2012
Console.WriteLine(string.Format(System.Globalization.CultureInfo.InvariantCulture, "{0:MM/dd/yyyy}", DateTime.Today));
于 2012-12-29T08:34:05.030 に答える
1

これをtrt

 DateTime.Today.ToString("MM/dd/yyyy")
于 2012-12-29T08:26:35.980 に答える
1

'/'は、(または指定された)カルチャに応じて変換されるカスタムの日付区切り文字です。本当にスラッシュが必要な場合は、それらを引用する必要があります。

String.Format("{0:MM'/'dd'/'yyyy}", DateTime.Today);

またはそれらを脱出します:

String.Format(@"{0:MM\/dd\/yyyy}", DateTime.Today);
于 2012-12-29T08:42:11.920 に答える
0

私はあなたがこれを試してみるべきだと思います

 DateTime.Today.ToString("MM/dd/yyyy")
于 2012-12-29T08:39:06.580 に答える