0

さまざまな日付形式で問題が発生しています。を使用して Web アプリケーションを作成していasp.net c#ます。JQuery日付と時刻を表示するカレンダー コントロールを使用しました。

次に、を使用してこの日付を解析していますDateTime.Parse()。サーバーがインドの日付形式で設定されている場合、アプリケーションは「文字列は有効な DateTime として認識されませんでした」という変換エラーを生成します。

MM/DD/YYYY日付形式を時間とともに形式に変換する方法はありますか? 使用できることはわかっていますDateTime.ParseExact()が、特定の形式に固執します。

どんな助けでも大歓迎です。

知恵を分けていただきありがとうございます。

4

5 に答える 5

2
Convert.ToDateTime(DateTime.Now, CultureInfo.GetCultureInfo("en-US")).ToString("MM/dd/yyyy hh:MM:ss");

ヒンディー語の日付または必要に応じて、en-US を hi-IN に置き換えることができます。リンクをたどってください。文化情報

http://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo(v=vs.80).aspx

文化がよくわからない場合は、以下の行を使用してください。

Convert.ToDateTime(DateTime.Now, CultureInfo.CurrentCulture).ToString("MM/dd/yyyy hh:MM:ss");

ここを参照してください http://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo.currentculture.aspx

あなたが使用できる他の方法はです。

DateTime dt;
DateTime.TryParse(DateTime.Now.ToString(), out dt);
于 2012-04-30T11:06:48.520 に答える
1

DateTime.Parse または DateTime.TryParse メソッドを試すことができます

   DateTime.Parse(DateTime.Now).ToString("MM/dd/yyyy hh:mm tt");

こちらも参照

http://www.geekzilla.co.uk/View00FF7904-B510-468C-A2C8-F859AA20581F.htm

http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx

ありがとう

ディープ

于 2012-04-30T11:11:39.643 に答える
0

このコードを使用できます。

public static CultureInfo CreateCulture(string shortDateFormat)
{

        CultureInfo newCulture = CultureInfo.CreateSpecificCulture("en-US");
        newCulture.DateTimeFormat.ShortDatePattern = shortDateFormat;
        newCulture.DateTimeFormat.LongDatePattern = shortDateFormat;

        return newCulture;
}
于 2012-04-30T12:01:29.920 に答える
0

このための拡張メソッドを作成できます。静的メソッドを使用して静的クラスを作成する必要があります。クラスで定義した日付形式を返します

public static class DateExtension
    {
        public static string GetDateTime(this DateTime? date)
        {
            if (date.HasValue)
                return date.Value.ToString("dd-MMM-yyyy hh:mm tt");
            return string.Empty;
        }
    }

コードでは、たとえば DateTime.GetDateTime() にこの拡張機能を使用できます。拡張ライブラリ クラスで指定した形式で日付と時刻を返します。

于 2012-04-30T12:52:06.270 に答える
0
string s;  
 s = dt.ToString("MM-dd-yyyy");
Console.WriteLine(s);//Displays 04-30-2012
于 2012-04-30T15:25:10.377 に答える