2014-05-23 57 views
-1

我不能改变日期格式,我已经试过2点的方法,但输出是0001-01-01
如何从DD-MMM-YYYY更改日期格式YYYY-MM-DD

方法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")); 
+0

你检查'success'的价值? – rhughes

+0

有了这个日期“输出”,'success'的值将是'false'。 –

回答

8

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);