Amr*_*ngh 14 java timezone android date simpledateformat
我正在开发一个项目,从后端IST(印度标准时间)获取日期/时间,如图所示"2013-01-09T19:32:49.103+05:30".但是当我使用以下DateFormat解析它时
DateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ");
Run Code Online (Sandbox Code Playgroud)
然后解析..
Date date = sdf.parse("2013-01-09T19:32:49.103+05:30");
System.out.println("XYZ ==============>"+date);
Run Code Online (Sandbox Code Playgroud)
以GMT格式显示日期作为输出即
Wed Jan 09 14:02:49 GMT+00:00 2013.
Run Code Online (Sandbox Code Playgroud)
我已经尝试使用TimeZone类作为..
TimeZone timeZone=TimeZone.getTimeZone("IST");
sdf.setTimeZone(timeZone);
Run Code Online (Sandbox Code Playgroud)
但没有效果..
我怎么能得到一个Date具有日期IST格式而不是GMT 的类对象...
请提供适当的解决方案..
编辑:
这是代码的样子:
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ");
TimeZone timeZone=TimeZone.getTimeZone("IST");
sdf.setTimeZone(timeZone);
Date date = sdf.parse("2013-01-09T19:32:49.103+05:30");
String formattedDate=sdf.format(date);
System.out.println("XYZ ==============>"+formattedDate);
Run Code Online (Sandbox Code Playgroud)
Evg*_*eev 28
日期没有任何时区.它只是自1970年1月1日00:00:00 GMT以来的毫秒数的持有者.使用与解析时相同的DateFormat,设置IST时区并设置日期格式,如下例所示
DateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSXXX");
Date date = sdf.parse("2013-01-09T19:32:49.103+05:30");
sdf.setTimeZone(TimeZone.getTimeZone("IST"));
System.out.println(sdf.format(date));
Run Code Online (Sandbox Code Playgroud)
产量
2013-01-09T19:32:49.103+05:30
Run Code Online (Sandbox Code Playgroud)
请注意,XX自1.7以来,X模式用于ISO 8601时区(-08:00).如果你在1.6尝试Z.有关格式模式的详细信息,请参阅SimpleDateFormat API
| 归档时间: |
|
| 查看次数: |
57892 次 |
| 最近记录: |