0

我对 Java 编程很陌生,我有这样的字符串:

2013-03-15T07:23:13Z

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

15-03-2013

那可能吗?

提前致谢。

4

6 回答 6

2

参考这个链接

如何更改 Java 中的日期格式?

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

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

于 2013-03-15T07:35:09.963 回答
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();
}
于 2013-03-15T07:44:29.013 回答
1

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

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

它会让你免于处理日期和日历。这是关于 ideone 的演示

于 2013-03-15T07:34:23.913 回答
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
于 2013-03-15T07:40:18.057 回答
0

java.text.SimpleDateFormat是你需要的:SimpleDateFormat JavaDoc

您需要一种格式来使用该方法将您的输入String转换为 a ,然后使用另一种格式将其转换为您想要的格式。Dateparse()DateStringformat()

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

于 2013-03-15T07:40:52.890 回答
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);

希望对你有帮助...

于 2013-03-15T07:57:57.887 回答