数据库包含UTC数据,当我尝试获取数据时
java.util.Calendar cal = Calendar.getInstance();
cal.setTimeZone(TimeZone.getTimeZone("UTC"));
java.sql.Timestamp ts = resultSet.getTimestamp(PUBLISH_TIME);
cal.setTime(ts);
Run Code Online (Sandbox Code Playgroud)
这有什么不对吗?
Sub*_*ubu 30
java.util.Calendar cal = Calendar.getInstance();
cal.setTimeZone(TimeZone.getTimeZone("UTC"));
java.sql.Timestamp ts = resultSet.getTimestamp(PUBLISH_TIME, cal);
Run Code Online (Sandbox Code Playgroud)
这应该做的伎俩!
您的DateFormat实例很可能以本地时间显示该值.显示您的值时,请尝试:
java.util.Calendar cal = Calendar.getInstance();
cal.setTimeZone(TimeZone.getTimeZone("UTC"));
java.sql.Timestamp ts = resultSet.getTimestamp(PUBLISH_TIME);
cal.setTime(ts);
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss z");
sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
System.out.println(sdf.format(cal.getTime()));
Run Code Online (Sandbox Code Playgroud)
编辑:你的评论:
如果我使用GMT怎么办,那将是SimpleDateFormat中的一个问题
SimpleDateFormat可以使用通用时区(GMT +/- n),RFC822和文本("如果它们有名称"作为JavaDoc状态 - 请参阅此帖子以获取有关名称的信息).
归档时间: |
|
查看次数: |
25342 次 |
最近记录: |