簡體   English   中英

如何將日期格式從dd-MMM-yyyy更改為yyyy-MM-dd

[英]how to change date format from dd-MMM-yyyy to yyyy-MM-dd

我無法更改日期格式,我嘗試了2種方法,但輸出為0001-01-01

方法1

hf_test.Value = "1-Jul-2013";

DateTime date;
var success = DateTime.TryParseExact(hf_test.Value,
    "dd-MMM-yyyy",
    CultureInfo.InvariantCulture,
    DateTimeStyles.None,
    out date);

    Resopnse.Write(date.ToString("yyyy-MM-dd"));

方法2

        hf_test.Value = "1-Jul-2013";
        Alert.Show(DateTime.ParseExact(hf_test.Value , "dd-MMM-yyyy", culture).ToString("yyyy-MM-dd"));

輸出0001-01-01表示不解析您的日期。 原因是您已經使用dd而不是d來表示字符串"1-Jul-2013"

所以用

DateTime date;
bool success = DateTime.TryParseExact(hf_test.Value,
                            "d-MMM-yyyy",
                            CultureInfo.InvariantCulture,
                            DateTimeStyles.None,
                            out date);

您使用了錯誤的格式說明符,您的日期字符串使用的是一位數字日期,但您使用的是前導0格式說明符dd )。 這期望您的日期字符串的日期格式為01-31

您需要使用開頭的0格式說明符d ),該說明符允許一位數的天,即

 d-MMM-yyyy

請參閱自定義日期和時間格式字符串

暫無
暫無

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

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