0
string temp = dataGridView1.Rows[x].Cells[y].ToolTipText;//stored in dd-MM-yy hh:mm:ss
           //MessageBox.Show(temp);
temp = temp[0].ToString() + temp[1].ToString() + temp[2].ToString() + temp[3].ToString() + 
temp[4].ToString() + temp[5].ToString() + temp[6].ToString() + temp[7].ToString() + 
temp[8].ToString() + temp[9].ToString();//converting to dd-MM-yyyy
labeldate = DateTime.ParseExact(temp,"dd-MM-yyyy",
                                  CultureInfo.InvariantCulture);

上記のコードを使用して、文字列 (dd/mm/yyyy 形式) を datetime 型に変換します。私のコンピューターでは問題なく動作します。しかし、他のコンピューターでも同じように、文字列が日時として認識されなかったというエラーが発生します。さらに調査中。他のコンピューターでは temp が 1/1/2013 または 11/3/2013 を示していたのに対し、私のコンピューターでは 01-01-2013 または 11-03-2013 を示していました。私はこれを解決できないようです。何か助けはありますか?

4

2 に答える 2

3

これはおそらく文化の問題です。を使用する.ToString(CultureInfo.InvarientCulture)と、コンピューターに設定されているカルチャに関係なく、同じ結果が得られます。

于 2013-05-10T04:43:56.567 に答える