Преобразование даты в строке в указанную локаль на Android - PullRequest
0 голосов
/ 01 сентября 2011

У меня есть эта дата в строке:

"2011-08-28 08:30:00 +0000"

Я хочу, чтобы это преобразовалось в 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 голосов
/ 01 сентября 2011

Android использует только UTC, не больше GMT.

Проблема в том, что у вас есть дата, которая не имеет четкого UTC, и Android не знает, что с этим делать, поэтому по умолчанию он просто предполагает, что ваша дата находится в текущем часовом поясе.

...