簡體   English   中英

DateTime.TryParseExact對於MM / dd / yyyy hh:mm返回false

[英]DateTime.TryParseExact returns false for MM/dd/yyyy hh:mm

以下代碼為我返回false ,但我無法弄清楚我在做什么錯。

var localDateTimeString = "03/24/2016 21:05"; // subject.Substring(0, 16);

DateTime localDateTime;
if (!DateTime.TryParseExact(
    localDateTimeString,
    "MM/dd/yyyy hh:mm",
    CultureInfo.InvariantCulture,
    DateTimeStyles.None,
    out localDateTime)) return false;

格式是固定的16個字符的字符串,日期,月份,分鍾和小時始終為2位數字。 年的4位數字。

但是這段代碼返回false,如何解決呢?

短版應該是HHhh 除非將一個數字小時(0到9)作為一個數字返回;否則 在這種情況下,您應該使用H


MSDN:

  • HH :小時,使用24小時制,從00到23。
  • hh :小時,使用從12到12的時鍾,從01到12。
  • H :小時,使用0到23之間的24小時制。
  • h :小時,使用1到12之間的12小時制。

從本質上更改格式:

"MM/dd/yyyy hh:mm"

至:

"MM/dd/yyyy HH:mm"

正確的格式應為MM/dd/yyyy HH:mm

if (!DateTime.TryParseExact(
                    localDateTimeString,
                    "MM/dd/yyyy HH:mm",
                    CultureInfo.InvariantCulture,
                    DateTimeStyles.None,
                    out localDateTime)) 

暫無
暫無

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

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