请教一个关于时区的问题

wznshuai 2010-11-23 05:48:35
我想请教一个时间问题:
例如:我现在有一个美国太平洋时间(GMT-8:00): 2010-11-23 16:07:25
我想把他转成格林威治时间(GMT)。
达人快来指教下啊 我在GregorianCalendar、TimeZone、SimpleDateFormat等类之间寻觅无果。。
快烦死了
...全文
150 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
wznshuai 2010-11-24
  • 打赏
  • 举报
回复
噢 噢噢噢噢噢噢噢噢 字太少了
super_thinker 2010-11-24
  • 打赏
  • 举报
回复
好小气 给我得了
wznshuai 2010-11-24
  • 打赏
  • 举报
回复
能不能给自己分啊
wznshuai 2010-11-24
  • 打赏
  • 举报
回复
唉 结贴吧
这个问题已经被俺解决了,没那么复杂啊!
/**
* GMT +8转换为GMT时间
* @param time GMT +8的字符串形式的时间
* @return String
*/
private static String GMT8ToGMT(String time){
//time(例如形如:2010-11-24 09:30:56)
String str[] = time.split(" ");
String dateArray[] = str[0].split("-");
String timeArray[] = str[1].split(":");
int hour = Integer.parseInt(timeArray[0]);
int min = Integer.parseInt(timeArray[1]);
int sec = Integer.parseInt(timeArray[2]);
int year = Integer.parseInt(dateArray[0]);
int mounth = Integer.parseInt(dateArray[1]);
int day = Integer.parseInt(dateArray[2]);
//用传来的time拆分后,构造一个时间对象
Date date = new Date(year-1900,mounth-1,day,hour,min,sec);
//以GMT +8 与 GMT 时间的时间差,构造一个GMT时间
Date date2 = new Date(date.getTime()-8*60*60*1000L);
SimpleDateFormat simple = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

return simple.format(date2);
}
wst004 2010-11-23
  • 打赏
  • 举报
回复
TimeZone.getRawOffset
wznshuai 2010-11-23
  • 打赏
  • 举报
回复
楼上的 谢谢你的回答,但是不是很适合我
wznshuai 2010-11-23
  • 打赏
  • 举报
回复
快来达人指教啊,难道都去下班吃饭了?

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧