2017-02-15 5 views
0

Недавно я получил немаркированное поле в метаданных, с которыми я работаю.Преобразование длинной строки даты и времени в формат Timestamp в Java

Данные в нем все выглядит следующим образом:

20160305111235.703000 

20101030120530.703000 

Я подозреваю, что они просто длинная строка сделана по дате и времени, вместе взятых.

Лучший способ для того, чтобы работать с этими строками в моем проекте, кажется, преобразования таких строк в формате Timestamp «YYYY-MM-дд чч: мм: СС.ссс»

Есть ли хороший способ конвертировать в этот формат? Я использую подстроку, чтобы добавить строки «-» и «:» в строку, но есть ли лучший способ?

Спасибо.

ответ

1

Вы можете использовать SimpleDateFormat для этого. Существует описание по ссылке. Также вы можете найти множество примеров использования Google.

Так что вам просто нужно преобразовать значение в свои данные в Date, а затем отформатировать его с помощью SimpleDateFormat.

+0

FYI, старый 'SimpleDateFormat', [' Calendar'] (http://docs.oracle.com/javase/8 /docs/api/java/util/Calendar.html) и ['Date'] (http://docs.oracle.com/javase/8/docs/api/java/util/Date.html) теперь [ наследие] (https://en.wikipedia.org/wiki/Legacy_system). Поставляется с помощью классов [java.time] (https://docs.oracle.com/javase/8/docs/api/java/time/package-summary.html). –

+0

@BasilBourque [все равно примерно с java7] (https://plumbr.eu/blog/java/java-version-and-vendor-data-analyzed-2016-edition) –

+0

@ScaryWombat Большая часть функций java.time back-ported на Java 6 и Java 7 в [ThreeTen-Backport] (http://www.threeten.org/threetenbp/) и далее адаптирован для Android в [ThreeTenABP] (https://github.com/JakeWharton/ThreeTenABP). –

2

Используйте классы java.time, встроенные в Java 8 и более поздние версии: LocalDateTime и DateTimeFormatter.

DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMddkkmmss.SSSSSS") ; 
LocalDateTime ldt = LocalDateTime.parse("20160305111235.703000", formatter); 

Дамп для консоли.

System.out.println(ldt); 

2016-03-05T11: 12: 35,703

Смежные вопросы