❶ java 中Calendar.getInstance() 實現的是什麼
java中calendar.getinstance()和new
date()的差別如下:
calendar.getinstance()是獲取一個calendar對象並可以進行時間的計算,時區的指定
new
date()是創建了回一個date對象,默認答是utc格式的。
二者可以相互轉化:
calendar
calendar
=
calendar.getinstance();
//
從一個
calendar
對象中獲取
date
對象
date
date
=
calendar.gettime();
//
將
date
對象反應到一個
calendar
對象中,
//
calendar/gregoriancalendar
沒有構造函數可以接受
date
對象
//
所以我們必需先獲得一個實例,然後設置
date
對象
calendar.settime(date);
❷ 如何使用java將GMT轉換為UTC格式
String toGMT(Date date) {
try {
SimpleDateFormat format = new SimpleDateFormat(
"yyyy-MM-dd HH:mm:ss");
Calendar cal = Calendar.getInstance(new SimpleTimeZone(0, "GMT"));
format.setCalendar(cal);
return format.format(date);
} catch (ParseException e) {
e.printStackTrace();
}
}
❸ 2003-07-16T01:24:32Z這是什麼時間格式,用java怎樣獲取這樣的時間r
這是標準的XML Schema的"日期型數據格式」
T是代表後面跟著「時間」。Z代表0時區,或者叫版UTC統一時間。
國內常見於權MS Office Excel電子表格XML中的時間格式。
Java用SimpleTimeFormat可以隨意處理這樣的時間文本
❹ Java 獲取當前UTC時間+10秒並轉換格式,求大神
importjava.text.SimpleDateFormat;
importjava.util.Calendar;
publicclassDateDemo{
publicstaticvoidmain(String[]args){
System.out.println(getDateString());
}
(){
Calendarcalendar=Calendar.getInstance();
calendar.add(Calendar.SECOND,10);
SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
returnsdf.format(calendar.getTime());
}
}
中間是個T嗎,其實我覺得空格會更好內看。容
❺ java中utc時間怎麼轉換為本地時間
計算機用的是unix紀元,1970年1月1日 0時0分 UTC(協調世界時 即升級版的格林威治時間)
可以說是回英國標准答時間。
中國是UTC+8 八區,中國本地時間要在以上標准時間上面加8小時。
反映在java的timemilli毫秒時是,
long china_ts=System.currentTimeMillier()+1000*60*60*8;
但只在不支持Java SE時區的早期版本(比如Java Card,Java ME/MIDP1.0)才需要自己手工加。
現在的java系統本身有時區庫,用Calendar/Date類,會自動調整時區。不需要再手動算。按以上加法會畫蛇添足。
❻ JAVA UTC時間的基準點問題
計算機用的是unix紀元,1970年1月1日 0時0分 UTC(協調世界時 即升級版的格林威治時間)
可以說是英國標准時間。
中國是UTC+8 八區,中國本地時間要在以上標准時間上面加8小時。
反映在java的timemilli毫秒時是,
long china_ts=System.currentTimeMillier()+1000*60*60*8;
但只在不支持Java SE時區的早期版本(比如Java Card,Java ME/MIDP1.0)才需要自己手工加。
現在的java系統本身有時區庫,用Calendar/Date類,會自動調整時區。不需要再手動算。按以上加法會畫蛇添足。
❼ 在java裡面,如何得到UTC時間, 時間格式為:Tue Oct 12 00:00:00 UTC 0800 2010
Calendar gc = GregorianCalendar.getInstance();
cal.add(java.util.Calendar.MILLISECOND, -(zoneOffset + dstOffset));
//之後調用cal.get(int x)或cal.getTimeInMillis()方法所取得的時間即是UTC標准時間。
System.out.println("UTC:"+new Date(cal.getTimeInMillis()));
贈送其它時間方法,總有一款適合您
public static void main(String[] args) {
SimpleDateFormat foo = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
System.out.println("foo:"+foo.format(new Date()));
Calendar gc = GregorianCalendar.getInstance();
System.out.println("gc.getTime():"+gc.getTime());
System.out.println("gc.getTimeInMillis():"+new Date(gc.getTimeInMillis()));
//當前系統默認時區的時間:
Calendar calendar=new GregorianCalendar();
System.out.print("時區:"+calendar.getTimeZone().getID()+" ");
System.out.println("時間:"+calendar.get(Calendar.HOUR_OF_DAY)+":"+calendar.get(Calendar.MINUTE));
//美國洛杉磯時區
TimeZone tz=TimeZone.getTimeZone("America/Los_Angeles");
//時區轉換
calendar.setTimeZone(tz);
System.out.print("時區:"+calendar.getTimeZone().getID()+" ");
System.out.println("時間:"+calendar.get(Calendar.HOUR_OF_DAY)+":"+calendar.get(Calendar.MINUTE));
Date time=new Date();
//1、取得本地時間:
java.util.Calendar cal = java.util.Calendar.getInstance();
//2、取得時間偏移量:
int zoneOffset = cal.get(java.util.Calendar.ZONE_OFFSET);
//3、取得夏令時差:
int dstOffset = cal.get(java.util.Calendar.DST_OFFSET);
//4、從本地時間里扣除這些差量,即可以取得UTC時間:
cal.add(java.util.Calendar.MILLISECOND, -(zoneOffset + dstOffset));
//之後調用cal.get(int x)或cal.getTimeInMillis()方法所取得的時間即是UTC標准時間。
System.out.println("UTC:"+new Date(cal.getTimeInMillis()));
Calendar calendar1 = Calendar.getInstance();
TimeZone tztz = TimeZone.getTimeZone("GMT");
calendar1.setTimeZone(tztz);
System.out.println(calendar.getTime());
System.out.println(calendar.getTimeInMillis());
}
運算結果是Tue Oct 19 16:54:57 CST 2010 符合你的要求
只是以毫秒來算的
❽ java中utc時間怎麼轉換為本地時間
utc毫秒值是個絕對值,和時區無關。如果需要轉換為對應時區的時間表示,可以使用java.text.DateFormat的setTimeZone(timeZone)之後,進行format