如何格式化这个字符串做一个正确的日期格式?

时间:2013-03-15 07:30:30

标签: java date

我是Java编程的新手,我有这样的字符串:

2013-03-15T07:23:13Z

我希望我可以将其转换为日期格式,如:

15-03-2013

可能吗?

提前致谢。

6 个答案:

答案 0 :(得分:2)

参考此链接

How can I change the date format in Java?

见克里斯托弗帕克先生给出的答案

它已经解释了您的所有需求,它将为您提供最简单的逻辑正确解决方案

答案 1 :(得分:2)

试试这个:

try {
    DateFormat sourceDateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
    DateFormat targetFormat = new SimpleDateFormat("dd-MM-yyyy");

    String strSourceDate = "2013-03-15T07:23:13Z";
    Date targetDate = (Date) sourceDateFormat.parseObject(strSourceDate);
    String strTargetDate = targetFormat.format(targetDate);
    System.out.println(strTargetDate);

} catch (ParseException e) {
     e.printStackTrace();
}

答案 2 :(得分:1)

如果输入字符串的格式是固定的,那么最简单和最方便的方法是使用字符串操作:

String s = "2013-03-15T07:23:13Z";
String res = s.substring(8, 10)+"-"+s.substring(5, 7)+"-"+s.substring(0, 4);

它可以帮助您处理日期和日历。这是demo on ideone

答案 3 :(得分:0)

试试这个:

  Date dNow = new Date( );
  SimpleDateFormat ft = 
  new SimpleDateFormat ("dd.MM.yyyy");

  System.out.println("Current Date: " + ft.format(dNow));

这是输出

 Current Date: 15.03.2013

答案 4 :(得分:0)

java.text.SimpleDateFormat就是您所需要的:SimpleDateFormat JavaDoc

您需要一种格式才能使用String方法将输入Date转换为parse(),然后将另一种格式转换为Date转换为String使用format()以您想要的格式。

如果您的应用程序可以在国际上使用,请不要忘记考虑正确本地化第二个功能的输出。 2013年11月3日是一些国家的3月11日,其他国家是11月3日。

答案 5 :(得分:0)

使用SimpleDateFormat

    String strDate = "2013-03-15T07:23:13Z";
    SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy");
    String date = dateFormat.format(strDate);
    System.out.println("Today in dd-MM-yyyy format : " + date);

希望它对你有所帮助......