Преобразование строки в дату с наносекундами
Некоторое время я боролся с этим фрагментом кода для приложения для Android, и я не могу его освоить. Я прочитал и перепробовал каждое решение, которое нашел в stackoverflow и других местах, но все же не повезло.
Что я хочу сделать, это иметь функцию для преобразования строки, как"17.08.2012 05:35:19:7600000"
на дату UTC и функцию, которая принимаетUTC date
и преобразует его в строку, как это.
String value = "17.08.2012 05:35:19:7600000";
DateFormat df = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss:SSSSSSS");
try
{
Date today = df.parse(value);
System.out.println("Today = " + df.format(today) + " " + today.toGMTString());
}
catch (ParseException e)
{
e.printStackTrace();
}
Это приводит к:Today = 17.08.2012 07:41:59:0000000 17 Aug 2012 04:41:59 GMT
которые оба не правы.
Я пробовал настройкуSDF's timezone
вUTC
, неудачно.
Еще одна вещь, которую я заметил: если я делаюdf.setLenient(false);
Это дает мне:java.text.ParseException: Unparseable date: "17.08.2012 05:35:19:7600000"
.
Если кто-нибудь может предоставить мне некоторые объяснения / пример кода, я был бы очень благодарен. заранее спасибо