簡體   English   中英

格式化DateTime.Now到yyyy-mm-dd

[英]Format DateTime.Now to yyyy-mm-dd

我想將DateTime.Now轉換為yyyy-mm-dd的格式,因為這是我想包括在查詢中的唯一格式。
DateTime.Now的默認format類似於5/1/2008 6:32:06 PM
如果我想將其格式更改為yyyyMMdd ,可以使用以下代碼行:

var dateString1 = DateTime.Now.ToString("yyyyMMdd");

但是,當我為yyyy-mm-dd格式嘗試如下所示時:

var dateString2 = DateTime.Now.ToString("yyyy-mm-dd");

我得到的結果是錯誤的。 對於以下代碼行:

var dateString1 = DateTime.Now.ToString("yyyyMMdd");
var dateString2 = DateTime.Now.ToString("yyyy-mm-dd");

Console.WriteLine("yyyyMMdd " + dateString1);
Console.WriteLine("yyyy-mm-dd "+ dateString2);

我得到以下結果:

在此處輸入圖片說明

第二種情況是錯誤的。
我想念什么?

根據msdn, MM格式說明符代表月份, mm代表分鍾。

“ mm” | 從00到59的分鍾。

“ MM” | 從01到12的月份。

因此,您的代碼應如下所示:

    var dateString1 = DateTime.Now.ToString("yyyyMMdd");
    var dateString2 = DateTime.Now.ToString("yyyy-MM-dd");

    Console.WriteLine("yyyyMMdd " + dateString1);
    Console.WriteLine("yyyy-MM-dd "+ dateString2);

這樣您將獲得理想的結果

    var dateString1 = DateTime.Now.ToString("yyyyMMdd");
    var dateString2 = DateTime.Now.ToString("yyyy-MM-dd");

    Console.WriteLine("yyyyMMdd " + dateString1);
    Console.WriteLine("yyyy-MM-dd "+ dateString2);

您在第二種格式中使用的是“ mm”而不是“ MM”。 mm是分鍾,MM是月。

您的未命中形式為小寫的“ m”(以第二種格式表示),它確定了MINUTES,但是對於MONTHS,您需要“ M”而不是“ m”。

暫無
暫無

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

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