2

文字列変換について質問があります。ユーザーがこの形式(dd/mm/yy)で日付を入力するテキストボックスがあります。

MySQLフレンドリーになるように変換する必要があります。

これまでのところ、これは私がやったことです

currentExpDate = txtDateStore.txt; //(i.e 25/12/13)
MessageBox.Show(currentExpDate.ToString()); // for debugging
//DateTime dt = DateTime.Parse(currentExpDate);
DateTime dt = DateTime.ParseExact(
    currentExpDate,
    "dd/MM/yyyy",
    CultureInfo.InvariantCulture);
string mySQLDate = dt.ToString("yyyy-MM-dd");

解析しようとすると、常にエラーがスローされます。文字列形式が認識できないという文字列例外が発生します。

この形式 dd/mm/yyyy で日付を入力しようとすると、魅力的に機能します。これを解決するための回避策はありますか?

ありがとう

4

2 に答える 2

6

日付を DateTime として直接使用して、データベースに保存する必要があります。文字列に戻す必要はありません。

于 2012-06-25T00:23:04.020 に答える
3

ここで何かが足りないかもしれませんがDateTime、「dd/MM/yy」形式を使用してオブジェクトを作成し、 DateTime「yyyy-MM-dd」を使用して文字列に変換すると、必要な形式の文字列が得られるようです..

ここに画像の説明を入力

コメントに答えるために、質問に投稿したコードを使用し、最初の変換の形式を「dd/MM/yy」に変更しました。

String currentExpDate;
currentExpDate = txtDateStore.Text; //(i.e 25/12/13) 
MessageBox.Show(currentExpDate.ToString()); // for debugging 
//DateTime dt = DateTime.Parse(currentExpDate); 
DateTime dt = DateTime.ParseExact(
    currentExpDate,
    "dd/MM/yy",
    CultureInfo.InvariantCulture);
string mySQLDate = dt.ToString("yyyy-MM-dd");  
于 2012-06-25T02:02:50.990 に答える