我有从sql数据库检索的日期(例如:2013-08-22 00:00:00.000)。我需要将其转换为另一种格式(例如:2013年8月)。
2013-08-22 00:00:00.000 - > AUG-2013
我如何使用java?
答案 0 :(得分:1)
试试这个(如果你想按照你想要的方式格式化日期):
假设包含日期的String变量是“date”...
String[] months = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"};
int index = date.subString(5,6);
String year = date.subString(0,3);
date = months[index-1] + "-" + year;
答案 1 :(得分:0)
如果从数据库中检索到您的日期,则应使用.getDate
的{{1}}方法检索它。这样你就可以得到一个合适的ResultSet
对象,你可以按照自己喜欢的方式进行格式化。
如果它来自其他地方作为字符串,那么您可以使用所需的特定格式创建Date
对象,并使用SimpleDateFormat
方法获取parse
对象。然后,再次,您可以按照自己喜欢的方式对其进行格式化。
答案 2 :(得分:0)
获取自1970年1月1日以来的日期以来的秒数。
SELECT DATEDIFF(s,'1970-01-01','2013-08-22') AS seconds
然后,您可以使用此值并将其添加到Java中的相同日期或任何其他语言。
这是解决日期格式区域差异的可靠方法。