3

日付形式を dd-mmm-yyyy (2013 年 5 月 16 日) から日付形式 mm/dd/yyyy (2013 年 9 月 12 日) に変換したいと考えています。

私はこのコードを使用しています。しかし、まだ正しい値を取得できません。月の値がゼロになっています。

string dt = DateTime.Parse(txtVADate.Text.Trim()).ToString("mm/dd/yyyy");

上記のコードの txtVADate は、dd-mmm-yyyy の例 (2013 年 5 月 16 日) のような日付形式を提供する TextBox コントロールです。

すべての回答はかなりのものです。

4

6 に答える 6

11

月の書式指定子は ではありMMません。mm使用してみてくださいMM/dd/yyyy。また、カスタム形式を使用する場合InvariantCultureは、アプリが実行されている現在のカルチャとの衝突を避けるために渡すのが最善です。

DateTime.Parse(txtVADate.Text.Trim()).ToString("MM/dd/yyyy", CultureInfo.InvariantCulture);

カスタムの日付と時刻のフォーマット文字列を参照してください。

于 2013-05-13T12:10:28.997 に答える
5

大文字を使用しMます。

m - 分
M - 月

于 2013-05-13T12:13:00.177 に答える
2

MM代わりにmmandCultureInfo.InvariantCultureを 2 番目のパラメータとして使用する必要があります

string dt = DateTime.Parse(txtVADate.Text.Trim()).ToString("MM/dd/yyyy", CultureInfo.InvariantCulture);
于 2013-05-13T12:11:37.250 に答える
1

スラッシュ/は、「あなたの文化情報の実際の現在の日付セパレーターに置き換えてください」という意味です。

セパレーターとして強制する/には、次を使用できますCultureInfo.InvariantCulture

string dt = DateTime.Parse(txtVADate.Text.Trim())
    .ToString("MM/dd/yyyy", CultureInfo.InvariantCulture);

MSDN :

/年、月、日を区別するために使用される、現在のSystem.Globalization.DateTimeFormatInfo.DateSeparator プロパティで定義されている日付区切り記号。

(小文字は分、大文字は月なので、mm の代わりに MM を使用する必要があります)

于 2013-05-13T12:11:25.717 に答える
0

これがあなたの解決策です。

using System.Globalization;

 string dt = DateTime.Parse(txtDate.Text.Trim()).ToString("mm/dd/yyyy", CultureInfo.InvariantCulture);

このようにすることもできます

 public string FormatPostingDate(string txtdate)
 {
     if (txtdate != null && txtdate != string.Empty)
     {
         DateTime postingDate = Convert.ToDateTime(txtdate);
         return string.Format("{0:mm/dd/yyyy}", postingDate);
     }
     return string.Empty;
 }
于 2013-12-10T17:36:40.287 に答える
0
string dt = datatime.toshortdatestring`
于 2013-05-13T13:11:50.573 に答える