![](/img/trans.png)
[英]How to convert yyyy-mm-dd hh:mm:ss.ms to mm/dd/yyyy hh24:mi using Java
[英]How to convert dd/MM/yyyy HH:mm:ss to offsetdatetime - java
我升級到:
DateTimeFormatter dtf = DateTimeFormatter.ofPattern ("dd/MM/yyyy HH:mm:ss");
org.threeten.bp.LocalDateTime _date = org.threeten.bp.LocalDateTime.parse ("10/19/2020 18:00:47", dtf);
並得到:2020-10-19T18:00:47 但我仍然沒有退出標准:2020-10-19T18:00:47.868-03:00
您的 DateTimeFormatter 具有 ("dd/MM/yyyy HH:mm:ss") 但您使用了 "10/19/2020 18:00:47"。 月份不能是 19。
將您的輸入更改為“19/10/2020 18:00:47”,它應該可以工作。
org.threeten.bp.format.DateTimeFormatter dtf = org.threeten.bp.format.DateTimeFormatter.ofPattern ("dd/MM/yyyy HH:mm:ss");
org.threeten.bp.LocalDateTime _date = org.threeten.bp.LocalDateTime.parse("19/10/2020 18:00:47", dtf);
System.out.println(_date);
user3197884 先前接受的答案是正確且信息豐富的 (+1)。 我覺得它沒有完全回答所問的問題,所以我想將轉換貢獻給org.threeten.bp.OffsetDateTime
。
DateTimeFormatter dtf = DateTimeFormatter.ofPattern ("MM/dd/yyyy HH:mm:ss");
OffsetDateTime date = LocalDateTime.parse("10/19/2020 18:00:47", dtf)
.atZone(ZoneId.of("America/Argentina/Buenos_Aires"))
.toOffsetDateTime();
System.out.println(date);
輸出是你要求的:
2020-10-19T18:00:47-03:00
由於您的字符串中沒有偏移量或時區,我們需要以其他方式提供偏移量。 我不敢說在您的特定情況下哪種方法是最好的,但一個非常常見的好方法是提供為字符串假定的時區。 我剛選了一個,請插入您自己的時區。
我沒有交換字符串中的10
和19
,而是交換了格式模式中的dd
和MM
。 顯然兩者都有效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.