簡體   English   中英

無法將DateTime格式從MM / dd / yyyy轉換為yyyy-MM-dd

[英]Can't convert DateTime format from MM/dd/yyyy to yyyy-MM-dd

我知道這是一個經常出現的問題,但是即使經過大量研究,我似乎也無法使它正常工作! 我想將字符串轉換為DateTime。

public DateTime ConvertToDateTime(string thisDate)
{
    return DateTime.ParseExact(thisDate, "yyyy-MM-dd", CultureInfo.InvariantCulture);
}

(編輯)

我給"2012-03-07"作為參數,並且我得到的DateTime03/07/2012 12:00AM 當我希望它返回時: 2012-03-07 00:00:00

您的代碼是正確的; 您的期望是錯誤的。

當方法返回DateTime它沒有格式 好吧,更准確地說,它具有二進制的內存格式,與它的字符串格式無關。

調試器將格式化DateTime以顯示給您,但這與DateTime值本身無關。 它使用的格式大概由您的區域設置確定。

當您要向用戶顯示DateTime或將其作為字符串傳遞給其他函數時,可以使用ToString重載之一隨意設置其格式。

可能是您正在顯示或傳遞給定函數的返回值。 如果是這樣,則錯誤在於顯示或傳遞DateTime的代碼中,而不在於您提供的函數中。 如果是這種情況,請編輯您的答案以包含該代碼,也許我們可以幫助您修復它。

嘗試這個

public String ConvertToDateTime(string thisDate)
{
    return DateTime.ParseExact(thisDate, "yyyy-MM-dd",
           CultureInfo.InvariantCulture).toString("yyyy-MM-dd");
}

暫無
暫無

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

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