[英]How to convert the date String with timezone
我有一些日期格式的字符串,例如
Sat Aug 15 13:53:41 MYT 2015
我使用 SimpleDateFormate 并尝试将 String 类型转换为 Date 类型。 它将 String 类型转换为 Date 类型,但是,Java 无法识别时区“MYT”,而是将其设置为我计算机的默认时区,即“CST”。 我需要在 Date 对象中记录时区。 我怎么能做到?
如果您提前知道时区,您可以像这样将其硬编码到格式化程序中:
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
format.setTimeZone(TimeZone.getTimeZone("Asia/Kuala_Lumpur"));
Date date = format.parse("2016-01-01 00:00:00 MYT");
你可以按照代码
String dateStr = "Sat Aug 15 13:53:41 MYT 2015";
DateFormat formatter = new SimpleDateFormat("E MMM dd HH:mm:ss Z yyyy");
Date date = (Date)formatter.parse(dateStr);
System.out.println(date);
Calendar cal = Calendar.getInstance();
cal.setTime(date);
String formatedDate = cal.get(Calendar.DATE) + "/" + (cal.get(Calendar.MONTH) + 1) + "/" + cal.get(Calendar.YEAR);
System.out.println("formatedDate : " + formatedDate);
资源链接:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.