簡體   English   中英

為什么字符串不能轉換為日期時間?

[英]Why string cannot be converted to dateTime?

我有這個字符串:

 {2018-06-17 10:05:41}

在某些時候,我嘗試將其轉換為 DateTime:

  DateTime.ParseExact(cell.StringCellValue, "dd/MM/yyyy", CultureInfo.InvariantCulture);

但我得到這個例外:

 "String was not recognized as a valid DateTime."

知道為什么上面的字符串不被識別為 DateTime 以及如何修復它嗎?

因為您使用了錯誤的格式 - 2018-06-17 10:05:41yyyy-MM-dd HH:mm:ss (不確定HH部分,可能是hh ,但缺少AM/PM是一個提示)。

此外,您最好使用TryParseExact然后使用ParseExact

DateTime dateTime;
DateTime.TryParseExact(
    cell.StringCellValue, 
    "yyyy-MM-dd HH:mm:ss", 
    CultureInfo.InvariantCulture, 
    DateTimeStyles.None, 
    out dateTime);

因為萬一解析失敗,您將不必處理異常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM