Date类中的方法
- 格式:doc
- 大小:408.50 KB
- 文档页数:9
Date类中的方法和字段属性不是静态的,所以静态的方法在调用Date类的运用时要先声明一个Date类的对象,用对象来调用方法和变量。
而且还要在最上面导入类:import java.util.Date;import java.util.*;public class Test7_6_Time {GregorianCalendar ac=new GregorianCalendar();public void getTime(){int a=ac.get(Calendar.YEAR );int b=ac.get(Calendar.MONDAY)+1;//因为月是从0开始的所以要加1int c=ac.get(Calendar.DATE);System.out.println(a+"\n"+b+"\n"+c);System.out.println(ac.getTime());}public void setTime(){ac.set(2009, 1, 13); //设置时间int a=ac.get(Calendar.YEAR );int b=ac.get(Calendar.MONDAY);int c=ac.get(Calendar.DATE);System.out.println(a+"\n"+b+"\n"+c);System.out.println(ac.getTime());}public void Time1(){String now=ac.get(Calendar.YEAR)+"年"+(ac.get(Calendar.MONTH)+1)+"月"+ac.get(Calendar.DATE)+"日"+ac.get(Calendar.HOUR)+"时"+ ac.get(Calendar.MINUTE)+"分"+ac.get(Calendar.SECOND)+"秒";System.out.println("当前时间是:"+now);}public static void main(String[] args) { Test7_6_Time t=new Test7_6_Time();t.getTime();t.Time1();t.setTime();t.Time1();}}结果:20121128Wed Nov 28 16:16:34 CST 2012当前时间是:2012年11月28日4时16分34秒2009113Fri Feb 13 16:16:34 CST 2009当前时间是:2009年2月13日4时16分34秒下面三种显示时间都要导入类。
Import java.util.*;//显示当前时间new Date(System.currentTimerMillis);结果:Wed Nov 28 16:16:34 CST 2012//显示当前时间Date d=new Date();System.out.println(d);结果:Wed Nov 28 16:16:34 CST 2012//显示当前的时间,以格式yyyy-MM-dd hh-mm-ss输出。
Date date=new Date();SimpleDateFormat f=new SimpleDateFormat(“yyyy-MM-dd HH-mm-ss”);System.out.println(f.format(date));//用于打开文件Runtime run=Runtime.getRuntime();run.exec("cmd /c start winword.exe");//用java打开word // /c表示c盘run.exec("cmd /c start mailto:abc@"); //用java打开outlook//得到毫秒数,long time1=new Date().getTime();//这是得到时间,就是把毫秒数转为时间,不过这里用的是国际化时间String time2=new Date(new Date().getTime()).toString();结果:1357212374929Thu Jan 03 19:26:14 CST 2013new Date().toLocaleString();这表示显示当前时间以本地格式来显示结果:2013-1-4 23:04:00//得到date的一些方法Date date=new Date();String hour=date.getHours();String day=date.getDate();产生动态效果(javascript里面的。
):window.setTimeou t("方法",时间);这句话就是说过了多少时间(毫秒)后执行这个方法,这里的“window.”可以不用写window.setInterval(“方法或操作”,时间);这里的“window.”可以不用写,如:setInterval(“check()”,1000);也可以:setInterval(check(),1000);操作:setInterval("dd.innerHTML=new Date().toLocaleString()+'星期'+'日一二三四五六'.charAt(new Date().getDay());",1000);}时间显示(jsp):1. <script type="text/javascript">function setF(){dd.innerHTML=new Date(new Date());setTimeout("setF()",500);}</script><body><div id="dd"></div><input type="button"onclick="JS:setF()"value="aaa"/></body>2.这是写在脚本中的:<script type="text/javascript">function setF(){setInterval("dd.innerHTML=new Date().toLocaleString()+'星期'+'日一二三四五六'.charAt(new Date().getDay());",1000);}</script><body><div id="dd"></div><input type="button"onclick="JS:setF()"value="aaa"/></body>结果:因为得到的月要小1.所以要加上1。
String和Date的相互转换:1.String-->DateString s=”2011/11/11 12:11:11”;Date date=new Date();SimpleDateFormat sdf=new SimpleDateFormat(“yyyy/MM/dd HH:mm:ss”);Date date1=sdf.parse(s); //将String转换为Date;这有个异常要比较的话要转换成毫秒数。
date1.getTime()>date.getTime(); //这样才能比。
2.Date-->StringString s=”2011/11/11 12:11:11”;Date date=new Date();SimpleDateFormat sdf=new SimpleDateFormat(“yyyy/MM/dd HH:mm:ss”);String str=sdf.forrmat(date); //将Date转换为String;获得当前时间也可以得到其它天的当前时间。
◆在java文件中:Calender ca1=Calender.getInstance();//getInstance()使用默认时区和语言环境获得一个日历。
ca1.add(Calendar.DATE,+1);//这是得到明天这个时候的时间。
System.out.println(cal.getTime());注:add(int field, int amount)根据日历的规则,为给定的日历字段添加或减去指定的时间量。
时间量单位为天。
◆在oracle数据库中:select sysdate+1from dual;//这是得到明天这个时候的时间。
sysdate表示当前系统时间。
◆在SQLServer 2008数据库中:select sysdatetime()from users;//当前系统时间select dateadd(day,1,getdate());//这是得到第二天的当前时间,日期加1.getdate()和sysdatetime()一样只不过返回的精度差点。
语法:DA TEADD (datepart, number, d ate)datepart:datepart缩写year yy, yyyyquarter qq, qmonth mm, mdayofyear dy, yday dd, dweek wk, wwweekday dw, whour hhminute mi, nsecond ss, smillisecond msmicrosecond mcsnanosecond nsnumber是一个表达式,可以解析为与date的datepart相加的int。
用户定义的变量是有效的。
date是一个表达式,可以解析为time、date、smalldatetime、datetime、datetime2或datetimeoffset值。
date可以是表达式、列表达式、用户定义的变量或字符串文字。
如果表达式是字符串文字,则它必须解析为一个datetime值。
为避免不确定性,请使用四位数年份。
返回类型:返回数据类型为date 参数的数据类型,字符串文字除外。