将字符串中的日期转换为Android上的指定区域设置

时间:2011-09-01 17:43:58

标签: android date locale

我在字符串中有这个日期:

“2011-08-28 08:30:00 +0000”

我想将它转换为匈牙利语Locale中的java.util.Date,所以我尝试使用这个格式化程序:

DateFormat currentDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss Z", new Locale("hu"));

我期待用currentDateFormat.parse我得到“2011-08-28 10:30:00”作为日期(匈牙利是GMT + 2)但它仍然是“2011-08-28 08:30:00” 。我试过使用setTimeZone(TimeZone.getDefault())但没有帮助。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

Android仅使用UTC,不再使用GMT。

问题是你的日期没有明确的UTC和Android不知道如何处理它所以它的默认行为是假设你的日期在当前时区。