導航:首頁 > 編程語言 > java時間gmt

java時間gmt

發布時間:2022-07-03 01:28:10

java實現win7系統時間

DateFormat chinaFormatter=DateFormat.getDateTimeInstance(DateFormat.MEDIUM,DateFormat.MEDIUM,Locale.CHINA);
DateFormat defaultFormatter=DateFormat.getDateTimeInstance();
Date now=new Date();
DateFormat gmt08Formatter=DateFormat.getDateTimeInstance();
TimeZone timezone=TimeZone.getTimeZone( "GMT 08:00 ");
gmt08Formatter.setTimeZone(timezone); //格式日期/時間
String defaultDateTime=defaultFormatter.format(now);
String chinaDateTime=chinaFormatter.format(now);
String gmt08DateTime=gmt08Formatter.format(now);
System.out.print( defaultDateTime+" " +chinaDateTime+" "+ gmt08DateTime);

輸出:2014-12-12 5:15:21

② java中new date與系統時間差8小時

Date d = new Date();

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd kk:mm:ss ");

sdf.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));

System.out.println(sdf.format(d));

用這個試試

你不太可能每個地方都使用上面這段代碼,最好是包裝一下,只需要設置一次就可以了

③ java怎麼獲取gmt當前的系統時間

Date now = new Date(); 當前時間就是now,你試著列印一下就出來了,如果對日期時間格式有要求,就SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//設置日期格式,不就OK了

④ java Thu Sep 04 2014 00:00:00 GMT 0800轉換成年月日

//如果是Object類型的時間,可以這么搞,如果是字元串的時間,直接字元串處理(此處略)
var date = new Date(value.time);//value是一個日期的Object
//格式轉為 yyyy-mm-dd
date=date.getFullYear()+"-"+(date.getMonth()+1)+"-"+date.getDate();

⑤ java獲取網路當前時間

如果你要獲取的是Internet時間,可以使用NTP服務。

NTP概念簡介
Network Time Protocol(NTP)是用來使計算機時間同步化的一種協議,它可以使計算機對其伺服器或時鍾源(如石英鍾,GPS等等)做同步化,它可以提供高精準度的時間校正(LAN上與標准間差小於1毫秒,WAN上幾十毫秒),且可介由加密確認的方式來防止惡毒的協議攻擊。


java實現:

importjava.io.InputStream;
importjava.net.Socket;

publicclassTimeUtil{
publicstaticfinalintDEFAULT_PORT=37;//NTP伺服器埠
_HOST="time-nw.nist.gov";//NTP伺服器地址
privateTimeUtil(){
};

(Booleansync){
if(sync!=null&&sync.booleanValue()!=true)
returnSystem.currentTimeMillis();
try{
returnsyncCurrentTime();
}catch(Exceptione){
returnSystem.currentTimeMillis();
}
}

()throwsException{
//,
//thejavaDateclassat1970.Thisnumber
//convertsbetweenthem.
longdifferenceBetweenEpochs=2208988800L;

//Ifyou'
//.

/*
*TimeZonegmt=TimeZone.getTimeZone("GMT");Calendarepoch1900=
*Calendar.getInstance(gmt);epoch1900.set(1900,01,01,00,00,00);
*longepoch1900ms=epoch1900.getTime().getTime();Calendarepoch1970
*=Calendar.getInstance(gmt);epoch1970.set(1970,01,01,00,00,00);
*longepoch1970ms=epoch1970.getTime().getTime();
*
*longdifferenceInMS=epoch1970ms-epoch1900ms;long
*differenceBetweenEpochs=differenceInMS/1000;
*/

InputStreamraw=null;
try{
SockettheSocket=newSocket(DEFAULT_HOST,DEFAULT_PORT);
raw=theSocket.getInputStream();

longsecondsSince1900=0;
for(inti=0;i<4;i++){
secondsSince1900=(secondsSince1900<<8)|raw.read();
}
if(raw!=null)
raw.close();
longsecondsSince1970=secondsSince1900-differenceBetweenEpochs;
longmsSince1970=secondsSince1970*1000;
returnmsSince1970;
}catch(Exceptione){
thrownewException(e);
}
}
}


中國大概能用的NTP時間伺服器
server 133.100.11.8 prefer
server 210.72.145.44
server 203.117.180.36 //程序中所用的
server 131.107.1.10
server time.asia.apple.com
server 64.236.96.53
server 130.149.17.21
server 66.92.68.246
server www.freebsd.org
server 18.145.0.30
server clock.via.net
server 137.92.140.80
server 133.100.9.2
server 128.118.46.3
server ntp.nasa.gov
server 129.7.1.66
server ntp-sop.inria.frserver 210.72.145.44(國家授時中心伺服器IP地址)
ntpdate 131.107.1.10
ntpdate -s time.asia.apple.com

⑥ Java如何根據TimeZone轉換時間,可以給出相關的例子嗎謝謝

通過TimeZone的getTimeZone方法來實現,具體可參考下面代碼例子:

importjava.text.ParseException;
importjava.text.SimpleDateFormat;
importjava.util.Calendar;
importjava.util.Date;
importjava.util.GregorianCalendar;
importjava.util.TimeZone;

publicclassCalendarTime{
publicstaticfinalStringDATE_PATTERN="yyyy-MM-ddHH:mm:ss";

privatestaticTimeZoneUSER_TIMEZONE=TimeZone.getTimeZone("PRC");

privatestaticTimeZoneGMT_TIMEZONE=TimeZone.getTimeZone("GMT");

publicstaticvoidmain(String[]args)throwsParseException{
System.out.println("starttest---------------------");
//
StringtestTime=newString("2008-02-0208:30:33");
System.out.println("");
System.out.println(testTime);
System.out.println("converttoGMTtime");
//
CalendargmtCal=CalendarTime
.(testTime);
System.out.println(getDateFormat(GMT_TIMEZONE).format(gmtCal.getTime())
+""+gmtCal.getTimeZone().getID());
CalendarlocalCal=convertGMTToCNTime(gmtCal);
System.out.println(localCal.getTime());
System.out.println("");
CalendarlocalTime=Calendar.getInstance();
localTime.set(2008,01,02,0,30,33);
System.out.println(localTime.getTime());
CalendargmtTime=convertCNTimeToGMT(localTime);
System.out.println(getDateFormat(GMT_TIMEZONE)
.format(gmtTime.getTime())
+""+gmtTime.getTimeZone().getID());
StringlocalStr=convertToLocalTimeString(gmtTime);
System.out.println(localStr);

}

/**
*getadateformatforanytimezone
*
*@paramtimeZone
*@return
*/
(TimeZonetimeZone){
SimpleDateFormatformater=newSimpleDateFormat(DATE_PATTERN);
formater.setTimeZone(timeZone);
returnformater;
}

/**
*
*
*@paramcalendar
*@return
*/
(Calendarcalendar){
if(null==calendar){
returnnull;
}
returngetDateFormat(USER_TIMEZONE).format(calendar.getTime());

}

/**
*
*
*@paramtime
*@return
*@throwsParseException
*/
publicstaticCalendar(Stringtime)
throwsParseException{
Datedate=getDateFormat(USER_TIMEZONE).parse(time.trim());
Calendarcalendar=newGregorianCalendar(GMT_TIMEZONE);
calendar.setTime(date);
returncalendar;
}

/**
*
*willnotchangeitstime
*
*@paramtime
*@return
*/
(Calendartime){
time.setTimeZone(GMT_TIMEZONE);
CalendarcnTime=Calendar.getInstance();
intbegin_year=time.get(Calendar.YEAR);
intbegin_month=time.get(Calendar.MONTH);
intbegin_day=time.get(Calendar.DAY_OF_MONTH);
intbegin_hour=time.get(Calendar.HOUR_OF_DAY);
intbegin_minute=time.get(Calendar.MINUTE);
intbegin_second=time.get(Calendar.SECOND);
cnTime.set(Calendar.YEAR,begin_year);
cnTime.set(Calendar.MONTH,begin_month);
cnTime.set(Calendar.DAY_OF_MONTH,begin_day);
cnTime.set(Calendar.HOUR_OF_DAY,begin_hour);
cnTime.set(Calendar.MINUTE,begin_minute);
cnTime.set(Calendar.SECOND,begin_second);
returncnTime;
}

/**
*
*willnotchangeitstime
*
*@paramcnTime
*@return
*/
(CalendarcnTime){
Calendarresult=newGregorianCalendar(GMT_TIMEZONE);
intyear=cnTime.get(Calendar.YEAR);
intmonth=cnTime.get(Calendar.MONTH);
intday=cnTime.get(Calendar.DAY_OF_MONTH);
inthour=cnTime.get(Calendar.HOUR_OF_DAY);
intminute=cnTime.get(Calendar.MINUTE);
intsecond=cnTime.get(Calendar.SECOND);
result.set(Calendar.YEAR,year);
result.set(Calendar.MONTH,month);
result.set(Calendar.DAY_OF_MONTH,day);
result.set(Calendar.HOUR_OF_DAY,hour);
result.set(Calendar.MINUTE,minute);
result.set(Calendar.SECOND,second);
returnresult;
}
}


starttest---------------------

2008-02-0208:30:33
converttoGMTtime
2008-02-0200:30:33GMT
SatFeb0200:30:33GMT+08:002008

SatFeb0200:30:33GMT+08:002008
2008-02-0200:30:33GMT
2008-02-0208:30:33

⑦ 在java中,怎麼得到用戶輸入的日期時間與GMT相距的時間差

一般情況下不會出現如題所示的問題,既然出現了我們就要想辦法解決之。以我的機器為例,我的當前系統時間是北京時間2011-08-31T08:00:00,但是newDate()得到的卻是:2011-08-31T00:00:00。表示java得到的時間比當前系統時間提前了8個小時,那麼我們就要想辦法把java得到的時間向後推遲8個小時。解決的辦法是:
1、找到你用的jre文件夾,以本機為例:C:\Program Files\Java\jdk1.5.0\jre
2、在上述文件夾下有個zi文件夾,我們的工作都在這里。
3、zi文件夾下有一個Etc文件夾,我們要做的工作就是從這個文件夾下找到對應的GMT文件替換zi下GMT文件。
4、選擇哪個文件呢?如果java獲取的時間+N=當前系統時間,就選擇GMT-N文件,重命名為GMT,覆蓋掉zi下的GMT文件,如果java獲取的時間-N=當前系統時間,就選擇GMT+N文件,重命名為GMT,覆蓋掉zi下的GMT文件。
5、再運行一下你的程序看時間是不是正確了,如果還是不正確,請確認你的jre目錄是否選得正確。

⑧ 我用JAVA 直接列印一個DATE 怎麼顯示的是GMT時間

因為默認locale不是us,所以就列印gmt時間了,看源代碼
timezone
zi
=
date.getzone();
if
(zi
!=
null)
{
sb.append(zi.getdisplayname(date.isdaylighttime(),
zi.short,
locale.us));
//
zzz
}
else
{
sb.append("gmt");
}
sb.append('
').append(date.getyear());
//
yyyy
return
sb.tostring();
}

⑨ java中能解析這樣的字元串時間「Mon, 4 Nov 2013 03:39:34 GMT」嗎

SimpleDateFormat sdf=new SimpleDateFormat();
sdf.parse("Mon, 4 Nov 2013 03:39:34 GMT");

閱讀全文

與java時間gmt相關的資料

熱點內容
圓命令畫法 瀏覽:303
如果給電腦e盤文件加密 瀏覽:799
javaswing項目 瀏覽:773
androidsdksetup 瀏覽:1001
pdf怎麼設置中文 瀏覽:124
安卓手機用什麼軟體看倫敦金 瀏覽:962
魅族文件夾無名稱 瀏覽:787
蘇黎世無人機演算法 瀏覽:872
核桃編程和小碼王的融資 瀏覽:681
微積分教材pdf 瀏覽:723
寫python給微信好友發消息 瀏覽:336
蚊帳自營米加密 瀏覽:418
學校推薦核桃編程 瀏覽:802
湖南農信app怎麼導明細 瀏覽:471
福特abs編程 瀏覽:506
如何自學安卓手機 瀏覽:437
以太坊源碼共識機制 瀏覽:910
單片機探測器 瀏覽:870
demo編程大賽作品怎麼運行 瀏覽:51
學歷提升用什麼手機軟體App 瀏覽:938