Vin*_*tti 31 java date datetime-format
我将日期存储在SQLite数据库中,格式如下:
d-MMM-yyyy,HH:mm:ss aaa
Run Code Online (Sandbox Code Playgroud)
当我用这种格式检索日期时,除了小时之外,我得到的每件事都很好.小时总是00.这是我的输出:
String date--->29-Apr-2010,13:00:14 PM
After convrting Date--->1272479414000--Thu Apr 29 00:00:14 GMT+05:30 2010
Run Code Online (Sandbox Code Playgroud)
这是代码:
Date lScheduledDate = CalendarObj.getTime();
DateFormat formatter = new SimpleDateFormat("d-MMM-yyyy,HH:mm:ss aaa");
SomeClassObj.setTime(formatter.format(lScheduledDate));
String lNextDate = SomeClassObj.getTime();
DateFormat lFormatter = new SimpleDateFormat("d-MMM-yyyy,HH:mm:ss aaa");
Date lNextDate = (Date)lFormatter.parse(lNextDate);
System.out.println("output here"+lNextDate);
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
Tho*_*zer 57
我认为你的日期格式没有意义.没有下午13:00.删除格式末尾的"aaa"或将HH变为hh.
不过,这对我来说很好:
String testDate = "29-Apr-2010,13:00:14 PM";
DateFormat formatter = new SimpleDateFormat("d-MMM-yyyy,HH:mm:ss aaa");
Date date = formatter.parse(testDate);
System.out.println(date);
Run Code Online (Sandbox Code Playgroud)
它打印"Thu Apr 29 13:00:14 CEST 2010".
听起来您可能想要使用类似SimpleDateFormat的东西。 http://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html
您声明日期格式,然后使用您的字符串调用parse方法。
private static final DateFormat DF = new SimpleDateFormat(...);
Date myDate = DF.parse("1234");
Run Code Online (Sandbox Code Playgroud)
就像纪尧姆说的那样,设置时区!
| 归档时间: |
|
| 查看次数: |
123465 次 |
| 最近记录: |