我有這個約會
regdate = 2021-12-02 11:30:05
我想添加 2 小時,所以我添加了這段代碼。
val simpleDate = SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.ENGLISH)
val cal = Calendar.getInstance()
cal.time = simpleDate.parse(regdate)
cal.add(Calendar.HOUR, 2)
但是輸出值是這樣出來的,我要問一個問題。
13:30:05
這次我要這種格式
2021-12-02 13:30:05
我怎樣才能做到這一點?
謝謝你的幫助
uj5u.com熱心網友回復:
看起來這就是你想要的
val simpleDate = SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.ENGLISH)
val cal = Calendar.getInstance()
cal.time = simpleDate.parse("2021-12-02 11:30:05")
cal.add(Calendar.HOUR, 2)
println("0000000000000 =>" simpleDate.format(cal.time))
=>> 輸出:I/System.out:0000000000000 ==>2021-12-02 13:30:05
uj5u.com熱心網友回復:
時間
考慮使用 java.time,現代 Java 日期和時間 API,用于您的日期和時間作業。
使用 java.time 通常會將格式化程式宣告為靜態常量。請原諒我的 Java 語法。
private static final DateTimeFormatter FORMATTER
= DateTimeFormatter.ofPattern("uuuu-MM-dd HH:mm:ss", Locale.ENGLISH);
然后作業是這樣的:
String regDateTimeString = "2021-12-02 11:30:05";
ZoneId defaultZone = ZoneId.systemDefault();
ZonedDateTime reg = LocalDateTime.parse(regDateTimeString, FORMATTER)
.atZone(defaultZone);
ZonedDateTime zdt = reg.plusHours(2);
String output = zdt.format(FORMATTER);
System.out.println(output);
大多數時區的輸出也將是您所期望的:
2021-12-02 13:30:05
我喜歡 java.time 代碼的一件事是它明確計算依賴于時區。
教程鏈接
Trail:日期時間(Java? 教程)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/371511.html
