您好,我有一種方法可以為我的當前時間增加一個時間。我正在尋找的是我想將此代碼添加為當地時間資訊,因為沒有正確獲取我所在國家/地區的當地時間。我在 stackoverflow 中進行了搜索,但找不到與此案例類似的主題。我開放你的建議,謝謝。
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.TimeUnit;
public class MyClass {
public static void main(String args[]) {
Calendar cal = Calendar.getInstance();
cal.add(Calendar.HOUR_OF_DAY, 8);
DateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmssSSS");
System.out.println(dateFormat.format(cal.getTime()));
}
}
我已經用 java.time 實用程式更改了代碼
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.TimeUnit;
public class MyClass {
public static void main(String args[]) {
DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("yyyyMMddHHmmssSSS");
LocalDateTime date = LocalDateTime.now();
System.out.println(dateFormat.format(date));
System.out.println(dateFormat.format(date.plusHours(10)));
}
}
uj5u.com熱心網友回復:
不幸的是,您不能真正使用時區,因為您是從作業系統中獲取的。如果作業系統為您提供 UTC,請將其配置為土耳其或在應用程式中更改它。
既然您知道您的位置,請執行以下操作:
LocalDateTime date = LocalDateTime.now((ZoneId.of("Europe/Istanbul"));
下面的這個問題可能會有所幫助: 我如何根據土耳其時區獲取 Calendar.getInstance()
您還可以使用您的互聯網提供商推斷您的時區。下面有2個例子。
時區示例 1
RestTemplate restTemplate = new RestTemplate();
String timezone = restTemplate.getForObject("https://ipapi.co/timezone", String.class);
時區示例 2
String timezone = restTemplate.getForObject("http://ip-api.com/line?fields=timezone", String.class);
獲取時區后:
LocalDateTime date = LocalDateTime.now(ZoneId.of(timezone));
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/515848.html
標籤:爪哇日期约会时间
下一篇:帶有mockEndpointsAndSkip()的ApacheCamel測驗沒有收到訊息,但是weaveById().replace().to()是
