我对 Java 编程很陌生,我有这样的字符串:
2013-03-15T07:23:13Z
我希望我可以将其转换为日期格式,例如:
15-03-2013
那可能吗?
提前致谢。
尝试这个 :
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();
}
如果输入字符串的格式是固定的,那么最简单和最方便的方法是使用字符串操作:
String s = "2013-03-15T07:23:13Z";
String res = s.substring(8, 10)+"-"+s.substring(5, 7)+"-"+s.substring(0, 4);
它会让你免于处理日期和日历。这是关于 ideone 的演示。
尝试这个:
Date dNow = new Date( );
SimpleDateFormat ft =
new SimpleDateFormat ("dd.MM.yyyy");
System.out.println("Current Date: " + ft.format(dNow));
是输出
Current Date: 15.03.2013
java.text.SimpleDateFormat
是你需要的:SimpleDateFormat JavaDoc
您需要一种格式来使用该方法将您的输入String
转换为 a ,然后使用另一种格式将其转换为您想要的格式。Date
parse()
Date
String
format()
如果您的应用程序可以在国际上使用,请不要忘记考虑正确本地化第二个函数的输出。2013 年 3 月 11 日在某些国家/地区是 3 月 11 日,在其他国家/地区是 11 月 3 日。
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);
希望对你有帮助...