當前位置:首頁 » 自動清洗 » 怎樣換算成本地時間

怎樣換算成本地時間

發布時間: 2022-06-18 13:06:38

Ⅰ 如何將GMT轉換為本地時間

這個獲取GMT時間的方法
public static Date getGMT8Time(){
Date gmt8 = null;
try {
Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("GMT+8"),Locale.CHINESE); Calendar day = Calendar.getInstance();
day.set(Calendar.YEAR, cal.get(Calendar.YEAR));
day.set(Calendar.MONTH, cal.get(Calendar.MONTH));
day.set(Calendar.DATE, cal.get(Calendar.DATE));
day.set(Calendar.HOUR_OF_DAY, cal.get(Calendar.HOUR_OF_DAY));
day.set(Calendar.MINUTE, cal.get(Calendar.MINUTE));
day.set(Calendar.SECOND, cal.get(Calendar.SECOND));
gmt8 = day.getTime();
} catch (Exception e) {
System.out.println("獲取GMT8時間 getGMT8Time() error !");
e.printStackTrace();
gmt8 = null;
}
return gmt8;
}

這個系統時間獲取 用datetime.Now;知道了獲取就容易轉換了!

Ⅱ 北京時間和地方時換算

將北京時間與當地時間的換算公式當地時間=北京時間-(120度-當地經度)×4分/度(當所得值為負數時,加上24小時)

Ⅲ 如何改win10的系統時間當作本地時間

一、首先要弄清幾個概念: 1. 系統時間與硬體時間 系統時間: 一般說來就是我們執行 date 命令看到的時間,linux系統下所有的時間調用(除了直接訪問硬體時間的命令)都是使用的這個時間。 硬體時間: 主板上BIOS中的時間,由主板電池供電來維持運行,系統開機時要讀取這個時間,並根據它來設定系統時間(注意:系統啟動時根據硬體時間設定系統時間的過程可能存在時區換算,這要視具體的系統及相關設置而定)。 2. UTC時間與本地時間 UTC時間:Coordinated Universal 8 e2 i( H7 t0 ^/ ^Time 世界協調時間(又稱世界標准時間、世界統一時間),在一般精度要求下,它與GMT(Greenwich Mean Time,格林威治標准時間)是一樣的,其實也就是說 GMTUTC,但 UTC 是以原子鍾校準的,更精確。 本地時間:由於處在不同的時區,本地時間一般與UTC是不同的,換算方法就是 本地時間 = UTC + 時區 或 UTC = 本地時間 - 時區 時區東為正,西為負,例如在中國,本地時間都使用北京時間,在linux上顯示就是 CST(China Standard Time,中國標准時,注意美國的中部標准時Central Standard Time也縮寫為CST,與這里的CST不是一回事!),時區為東八區,也就是 +8 區,所以 CST=UTC+(+8小時) 或 UTC=CST-(+8小時)。 二、時間命令 1. 系統時間 date 直接調用 date,得到的是本地時間。如果想得到UTC時間的話,使用 date -u. [12-01 19:07 ~]$ date 2009年 12月 07日 星期一 14:22:20 CST [12-01 19:07 ~]$ date -u 2009年 12月 07日 星期一 06:22:22 UTC 2. 硬體時間 /sbin/hwclock 直接調用 /sbin/hwclock 顯示的時間就是 BIOS 中的時間嗎?未必!這要看 /etc/sysconfig/clock 中是否啟用了UTC,如果啟用了UTC(UTC=true),顯示的其實是經過時區換算的時間而不是BIOS中真正的時間,如果加上 --localtime 選項,則得到的總是 BIOS 中實際的時間。 [12-01 19:07 ~]# hwclock 2009年12月07日 星期一 14時28分43秒 -0.611463 seconds [12-01 19:07 ~]# hwclock --utc 2009年12月07日 星期一 14時28分46秒 -0.594189 seconds [12-01 19:07 ~]# hwclock --localtime 2009年12月07日 星期一 06時28分50秒 -0.063875 seconds 3. /etc/localtime 這個文件用來設置系統的時區,將 /usr/share/zoneinfo/ 中相應文件拷貝到/etc下並重命名為 localtime 即可修改時區設置,而且這種修改對 date 命令是及時生效的。不論是 date 還是 hwclock 都會用到這個文件,會根據這個文件的時區設置來進行UTC和本地之間之間的換算 4. /etc/sysconfig/clock 這個文件只對 hwclock 有效,而且似乎是只在系統啟動和關閉的時候才有用,比如修改了其中的 UTC=true 到 UTC=false 的前後,執行 hwclock (--utc, 或 --localtime) 都沒有變化,要重啟系統後才生效。註:如果設置 UTC=false 並重啟系統後,執行一些命令結果如下: date 2009年 12月 07日 星期一 19:26:29 CST date -u 2009年 12月 07日 星期一 11:26:29 UTC hwclock 2009年12月07日 星期一 19時26分30秒 -0.442668 seconds hwclock --utc 2009年12月08日 星期二 03時26分31秒 -0.999091 seconds hwclock --localtime 2009年12月07日 星期一 19時26分32秒 -0.999217 seconds 可見,如果不使用UTC,BIOS時間(紅色部分)就是系統本地時間,而且注意這時執行 hwclock --utc 得到的結果沒有任何意義,因為這里我們已經禁用了UTC,而且也明顯不符合本地時間=UTC+時區的關系。 三、linux與windows雙系統間的時間同步 系統啟動和關閉時,硬體時間與系統時間之間的同步有兩種方式(假設在中國,用CST代表本地時間): 方式A: 使用UTC(對linux就是 /etc/sysconfig/clock 中 UTC=true) 開機: BIOS-------UTC(將BIOS中的時間看成是UTC)------(時區變化)-----CST 關機: CST -------(時區變化)-----UTC-------存儲到------BIOS 方式B: 不使用UTC(對linux就是 /etc/sysconfig/clock 中 UTC=false) 開機: BIOS---------------------CST(將BIOS中的時間看成是CST) 關機: CST ---------存儲到------BIOS 通過設定 /etc/sysconfig/clock,linux可以支持這兩種方式,然而windows只支持方式B(至少是默認支持B,而我不知道怎麼能讓它支 持A),那麼在雙系統情況下,如果linux設成A方式,那麼在linux與windows系統切換時一定會造成時間混亂的,解決辦法就是將linux中 的UTC禁用,也設成B方式就可以了。 註:可以通過 hwclock --hctosys 來利用硬體時間來設置系統時間(注意不是簡單的復制BIOS中的時間為系統時間,要看是否使用UTC,如果使用的話則要做時區換算),通過 hwclock --systohc 來根據系統時間設置硬體時間(也要看是否啟用UTC來決定是否做時區換算)。 總之,不論使用 --systohc 還是 --hctosys,同步後直接運行不帶參數的 hwclock 得到的時間與直接運行 date 得到的時間應該一致,這個時間是否就是BIOS中的時間(hwclock --localtime)那就不一定了,如果啟用了UTC就不是,沒啟用UTC就是。 而且還要注意:在系統中手動使用 hwclock hwclock --set --date='yyyy-mm-dd' 來設置BIOS時間只在系統運行時有效,因為當系統關閉時,還會按設定好的方式根據系統時間來重設BIOS時間的,於是手動的設置便被覆蓋掉了。 Linux時鍾分為系統時鍾(System Clock)和硬體(Real Time Clock,簡稱RTC)時鍾。系統時鍾是指當前Linux Kernel中的時鍾,而硬體時鍾則是主板上由電池供電的時鍾,這個硬體時鍾可以在BIOS中進行設置。當Linux啟動時,硬體時鍾會去讀取系統時鍾的設置,然後系統時鍾就會獨立於硬體運作。 Linux中的所有命令(包括函數)都是採用的系統時鍾設置。在Linux中,用於時鍾查看和設置的命令主要有date、hwclock和clock.其中,clock和hwclock用法相近,只用一個就行,只不過clock命令除了支持x86硬體體系外,還支持Alpha硬體體系。

Ⅳ 時間計算公式是什麼

時間計算公式,求時區:時區數=已知經度/15°(商四捨五入取整數,即為時區數);求區時:所求區時=已知區時±時區差(東加西減)。求地方時:所求地方時=已知地方時±4分鍾/度×經度差東加西減。

時間,是物質的運動、變化的持續性、順序性的表現,包含時刻和時段兩個概念。時間是人類用以描述物質運動過程或事件發生過程的一個參數,確定時間,是靠不受外界影響的物質周期變化的規律。

時間時區劃分

世界各地的人們,在生活和工作中如果各自採用當地的時間,對於日常生活、交通等會帶來許許多多的不便和困難。為了照顧到各地區的使用方便,又使其他地方的人容易將本地的時間換算到別的地方時間上去。

將地球表面按經線劃分的24(36)個區域。當我們在上海看到太陽升起時,居住新加坡的人要再過半小時才能看到太陽升起。而遠在英國倫敦的居民則還在睡夢中,要再過8小時才能見到太陽呢。

有關國際會議決定將地球表面按經線從東到西,劃成一個個區域,並且規定相鄰區域的時間相差1小時。在同一區域內的東端和西端的人看到太陽升起的時間最多相差不過1小時。當人們跨過一個區域,就將自己的時鍾校正1小時(向西減1小時,向東加1小時),跨過幾個區域就加或減幾小時。

這樣使用起來就很方便。現今全球共分為24個時區。由於實用上常常1個國家,或1個省份同時跨著2個或更多時區,為了照顧到行政上的方便,常將1個國家或1個省份劃在一起。所以時區並不嚴格按南北直線來劃分,而是按自然條件來劃分。

Ⅳ 如何將北京時間與當地時間的換算公式

公式是對的。把(當所得值為負數時,加上24小時)去掉

哈爾濱地方時=北京時間+26.52分

Ⅵ utc+2時間轉換北京時間

您要問的是不是utc時間怎樣轉換北京時間?UTC+時區差=本地時間。
時區差東為正,西為負。在此,把東八區時區差記為+0800,UTC+(+0800)=本地(北京)時間,那麼,UTC=本地時間(北京時間))-0800。
UTC是指協調世界時,又稱世界統一時間、世界標准時間、國際協調時間。由於英文(CUT)和法文(TUC)的縮寫不同,作為妥協,簡稱UTC。

Ⅶ 怎麼用經緯度換算當地北京時間

1、已知時區數求中央經線及范圍
中央經線=時區數×15°(如東八區 15°×8=120° 即120°E)
范圍:用中央經線加減7.5°(如東八區 范圍即112.5°E至127.5°E)
2、已知某地經度問在哪一時區
用所給經度數除以15,商到一位小數四捨五入取整.(如148°W 148÷15=9.8 即西十區)
3、已知某時區時間求另一時區的時間
北京現在是12月1日16:30那麼莫斯科現在是幾點?多倫多呢?
由圖可知:北京東八區 莫斯科東二區 多倫多西五區(東正西負)
所求時間=所給時間-(所給時間的時區-所求時區)注:如若差小於0,則再加24,但日期要提前1天;若差大於24,則再減24,但日期要加1天.
莫斯科 16:30-(8-2)=11:30 多倫多 16:30-(8--5)=3:30 北京現在是12月1日2:30那麼莫斯科現在是幾點?2:30-(8-2)=-3:30 -3:30+24=20:30 即11月30日20:30 多倫多現在是12月1日12:30那麼北京現在是幾點?12:30-(-5-8)=25:30 25:30-24=1:30 即12月2日1:30
4、地方時的計算:
要計算的地方時=已知地方時-4分鍾×(已知時間的經度-要計算時間的經度),其中經度中,東經為正,西經為負.例:已知120°E的地方時為12:00,求20°W的地方時?20°W的地方時=12:00-4分×[120°-(-20°)]=12:00-9:20=2:40,日期變化同上,其他方法同上例.

Ⅷ 如何將UTC時間轉化為本地時間

utc毫秒值是個絕對值,和時區無關。如果需要轉換為對應時區的時間表示,可以使用java.text.DateFormat的setTimeZone(timeZone)之後,進行format

如有疑問,請追問~

希望可以幫到你~ O(∩_∩)O謝謝~

Ⅸ 如何將 UTC 時間轉換為本地時間

java utc轉本地時間的方法:
1、創建一個格式化時間對象simpleDateFormat,並初始化格式yyyy-MM-dd HH:mm:ss:
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
2、創建時區對象utcZone,獲取utc所在的時區
TimeZone utcZone = TimeZone.getTimeZone("UTC");
3、設置utc時區,為轉換做准備
simpleDateFormat.setTimeZone(utcZone);
4、獲取本地時間,並轉換
Date myDate = simpleDateFormat.parse(rawQuestion.getString("AskDateTime"));
5,按照上面的流程就轉換本地時間了。