record.Time の値は「11/01/2012 11:38:01:296」です。
string[] capturetime = record.Time.Split(':');
string captime = capturetime[0] + ":" +
capturetime[1] + ":" +
capturetime[2] + "." +
capturetime[3];
DateTime rightTime = Convert.ToDateTime(captime);
2 行目の実行後、captime の値は "11/01/2012 11:38:01.296" であり、最後の行にエラーが表示されます: "インデックスと長さは文字列内の場所を参照する必要があります。パラメータ名: lengthmscorlib"
理由がわかりません。以前は問題なく動作していたので:(誰でもこれを説明できますか?tksそんなに
解決しました。皆さん、どうもありがとう:)
コード :
string[] capturetime = newRecord.Time.Split(':');
string captime = capturetime[0] + ":" + capturetime[1] + ":" + capturetime [2] + "." + capturetime[3];
DateTime righttime;
if(time[3].Length == 2)
{
righttime = DateTime.ParseExact(captime, "MM/dd/yyyy hh:mm:ss.ff",
CultureInfo.InvariantCulture);
} else
{
righttime = DateTime.ParseExact(captime, "MM/dd/yyyy hh:mm:ss.fff",
CultureInfo.InvariantCulture);
}
これらのコードを最適化するためのアイデアはありますか????
アップデート :
それは私ですか、それとも私のVisual Studioはクレイジーですか??? 上記の新しいコードは、古いコードと同じように、古いコードに戻したときに例外が発生しました。それは昔のようにうまく動作します..wthはこれです:(