Dee*_*epu 2 java timezone date simpledateformat
我试图在SimpleDateFormat 的帮助下将时区设置为不同国家的时区。SimpleDateFormat.format()返回给定时区的正确当前时间,但SimpleDateFormat.parse()返回本地当前时间,我不知道为什么会发生这种情况。这是我的代码 -
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:MM:ss");
dateFormat.setTimeZone(TimeZone.getTimeZone("America/Los_Angeles"));
System.out.println("Time1 : " + dateFormat.format(new Date()));
System.out.println("Time2 : " + dateFormat.parse(dateFormat.format(new Date())));
Run Code Online (Sandbox Code Playgroud)
输出是 -
Time1 : 2013-01-17 21:01:55
Time2 : Fri Jan 18 10:30:55 IST 2013
Run Code Online (Sandbox Code Playgroud)
Time1 是 "America/Los_Angeles" 的输出,Time2 是 local(即 "Asia/Calcutta") 的输出。
我只想要 UTC 秒格式的给定时区的当前时间(即自 1970 年 1 月 1 日以来的秒数)。
为什么 SimpleDateFormat.format() 和 SimpleDateFormat.parse() 虽然只设置一个时区却给出不同的时间?
请帮我。
使用Parse,您可以命令编译器以特定格式理解给定的日期。它理解并保持它自己的格式,并准备好提供您想要的任何格式!
您将获得一个输出,这是您输入的日期已成功解析的信号。您无法控制变量存储的日期格式。
使用格式,您可以将日期转换为任何所需的格式。
简单解析 -> 阅读(我可以以任何方式阅读并以我想要的任何方式存储)格式 -> 写(我会给你你想要的格式)
| 归档时间: |
|
| 查看次数: |
13576 次 |
| 最近记录: |