0

こんにちは、detailview 列のテキストを以下に示す DateTime タイプのプロパティに保存しようとしているアプリケーションがあります。

public DateTime StartDateTime
{
    get { return Convert.ToDateTime(detailview1.Rows[1].Cells[1].Text); }
}

detailview1.Rows[1].Cells[1].Text に日付形式以外のテキストがある場合、例外が発生します。「 」のように。この問題を解決するには?

4

2 に答える 2

2

最初に DateTime.TryParse を使用して、テキストが有効な日時であることを検証します。

DateTime d ;
DateTime.TryParse("12 Jun 2012", out d);
于 2012-08-02T03:02:52.723 に答える
0

文字列が正しい形式の正規表現ではないことがわかっている場合は、有効な日付を抽出するために使用してみてください

Regex regex = new Regex(@"\d{1,2}\s+?(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)\w*\s+?\d{4}"
    RegexOptions.IgnoreCase
    | RegexOptions.CultureInvariant
    | RegexOptions.IgnorePatternWhitespace
    | RegexOptions.Compiled
    );

DateTime.Parse(regex.Match(detailview1.Rows[1].Cells[1].Text).Groups["date"].Value)
于 2012-08-02T03:00:57.793 に答える