如何解析d / y / year的日期格式?

时间:2015-11-25 11:17:14

标签: c# datetime

我想知道如何转换我包含的字符串,例如字符串(1/1/2015)或(14/1/2015)或(14/11/2015)并转换为日期

string mydate;
DateTime dt = DateTime.ParseExact(mydate, "dd/MM/yyyy", CultureInfo.InvariantCulture); 

这是正确的方法吗?

4 个答案:

答案 0 :(得分:3)

由于您的日期和月份的单位数都不是leading zero,因此您需要使用d/M/yyyy格式。

string mydate;
DateTime dt = DateTime.ParseExact(mydate, "d/M/yyyy", CultureInfo.InvariantCulture); 

这将成功解析您拥有的所有三种字符串。

进一步阅读:

答案 1 :(得分:0)

试试这个,

DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
DateFormat outputformat = new SimpleDateFormat("yyyy-MM-dd hh:mm aa");
Date date = null;

try
{
    date = df.parse(listData.get(position).get("datetime"));
    strDateTime = outputformat.format(date);
}
catch (Exception e)
{
    e.printStackTrace();
}

如果您需要这样的输出 - >的 1/1/2015

  

只需更改格式化方法d / m / yyyy

 DateFormat outputformat = new SimpleDateFormat("d/m/yyyy");
  

所有日期格式,请访问此链接:

http://developer.android.com/reference/java/text/SimpleDateFormat.html

答案 2 :(得分:0)

在java中,您可以尝试以下代码: -

 String str_date="14/1/2015";
 DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
 Date date = formatter.parse(str_date);

以下是来自the javadoc的相关链接,列出了所有可用的格式模式:

答案 3 :(得分:0)

您可以轻松地使用SimpleDateFormat在Date和String之间进行解析。

String strDate = "2013-05-15T10:00:00-0700";
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm");
Date date = dateFormat.parse(strDate);
System.out.println(date);