java获取当前日期和时间的二种方法分享
程序员文章站
2024-02-25 09:23:34
有两种方法:方法一:用java.util.date类来实现,并结合java.text.dateformat类来实现时间的格式化,看下面代码:复制代码 代码如下:import...
有两种方法:
方法一:用java.util.date类来实现,并结合java.text.dateformat类来实现时间的格式化,看下面代码:
import java.util.*;
import java.text.*;
//以下默认时间日期显示方式都是汉语语言方式
//一般语言就默认汉语就可以了,时间日期的格式默认为medium风格,比如:2008-6-16 20:54:53
//以下显示的日期时间都是再date类的基础上的来的,还可以利用calendar类来实现见类testdate2.java
public class testdate {
public static void main(string[] args) {
date now = new date();
calendar cal = calendar.getinstance();
dateformat d1 = dateformat.getdateinstance(); //默认语言(汉语)下的默认风格(medium风格,比如:2008-6-16 20:54:53)
string str1 = d1.format(now);
dateformat d2 = dateformat.getdatetimeinstance();
string str2 = d2.format(now);
dateformat d3 = dateformat.gettimeinstance();
string str3 = d3.format(now);
dateformat d4 = dateformat.getinstance(); //使用short风格显示日期和时间
string str4 = d4.format(now);
dateformat d5 = dateformat.getdatetimeinstance(dateformat.full,dateformat.full); //显示日期,周,时间(精确到秒)
string str5 = d5.format(now);
dateformat d6 = dateformat.getdatetimeinstance(dateformat.long,dateformat.long); //显示日期。时间(精确到秒)
string str6 = d6.format(now);
dateformat d7 = dateformat.getdatetimeinstance(dateformat.short,dateformat.short); //显示日期,时间(精确到分)
string str7 = d7.format(now);
dateformat d8 = dateformat.getdatetimeinstance(dateformat.medium,dateformat.medium); //显示日期,时间(精确到分)
string str8 = d8.format(now);//与short风格相比,这种方式最好用
system.out.println("用date方式显示时间: " + now);//此方法显示的结果和calendar.getinstance().gettime()
system.out.println("用dateformat.getdateinstance()格式化时间后为:" + str1);
system.out.println("用dateformat.getdatetimeinstance()格式化时间后为:" + str2);
system.out.println("用dateformat.gettimeinstance()格式化时间后为:" + str3);
system.out.println("用dateformat.getinstance()格式化时间后为:" + str4);
system.out.println("用dateformat.getdatetimeinstance(dateformat.full,dateformat.full)格式化时间后为:" + str5);
system.out.println("用dateformat.getdatetimeinstance(dateformat.long,dateformat.long)格式化时间后为:" + str6);
system.out.println("用dateformat.getdatetimeinstance(dateformat.short,dateformat.short)格式化时间后为:" + str7);
system.out.println("用dateformat.getdatetimeinstance(dateformat.medium,dateformat.medium)格式化时间后为:" + str8);
}
}
运行结果:
用date方式显示时间: mon jun 16 20:54:53 cst 2008
用dateformat.getdateinstance()格式化时间后为:2008-6-16
用dateformat.getdatetimeinstance()格式化时间后为:2008-6-16 20:54:53
用dateformat.gettimeinstance()格式化时间后为:20:54:53
用dateformat.getinstance()格式化时间后为:08-6-16 下午8:54
用dateformat.getdatetimeinstance(dateformat.full,dateformat.full)格式化时间后为:2008年6月16日 星期一 下午08时54分53秒 cst
用dateformat.getdatetimeinstance(dateformat.long,dateformat.long)格式化时间后为:2008年6月16日 下午08时54分53秒
用dateformat.getdatetimeinstance(dateformat.short,dateformat.short)格式化时间后为:08-6-16 下午8:54
用dateformat.getdatetimeinstance(dateformat.medium,dateformat.medium)格式化时间后为:2008-6-16 20:54:53
方法二:用java.util.calendar类来实现,看下面:
import java.util.*;
import java.text.*;
//以下是利用calendar类来实现日期时间的,和date类相比较比较简单
public class testdate2 {
public static void main(string[] args) {
calendar ca = calendar.getinstance();
int year = ca.get(calendar.year);//获取年份
int month=ca.get(calendar.month);//获取月份
int day=ca.get(calendar.date);//获取日
int minute=ca.get(calendar.minute);//分
int hour=ca.get(calendar.hour);//小时
int second=ca.get(calendar.second);//秒
int weekofyear = ca.get(calendar.day_of_week);
system.out.println("用calendar.getinstance().gettime()方式显示时间: " + ca.gettime());
system.out.println("用calendar获得日期是:" + year +"年"+ month +"月"+ day + "日");
system.out.println("用calendar获得时间是:" + hour +"时"+ minute +"分"+ second +"秒");
system.out.println(weekofyear);//显示今天是一周的第几天(我做的这个例子正好是周二,故结果显示2,如果你再周6运行,那么显示6)
}
}
运行结果是:
用calendar.getinstance().gettime()方式显示时间: mon jun 16 21:54:21 cst 2008
用calendar获得日期是:2008年5月16日
用calendar获得时间是:9时54分21秒
总结:中的来说,方法二是最方便的,方法一显得分笨拙,不过看个人喜欢了。
还有一种方法利用
system.currenttimemillis()
方法一:用java.util.date类来实现,并结合java.text.dateformat类来实现时间的格式化,看下面代码:
复制代码 代码如下:
import java.util.*;
import java.text.*;
//以下默认时间日期显示方式都是汉语语言方式
//一般语言就默认汉语就可以了,时间日期的格式默认为medium风格,比如:2008-6-16 20:54:53
//以下显示的日期时间都是再date类的基础上的来的,还可以利用calendar类来实现见类testdate2.java
public class testdate {
public static void main(string[] args) {
date now = new date();
calendar cal = calendar.getinstance();
dateformat d1 = dateformat.getdateinstance(); //默认语言(汉语)下的默认风格(medium风格,比如:2008-6-16 20:54:53)
string str1 = d1.format(now);
dateformat d2 = dateformat.getdatetimeinstance();
string str2 = d2.format(now);
dateformat d3 = dateformat.gettimeinstance();
string str3 = d3.format(now);
dateformat d4 = dateformat.getinstance(); //使用short风格显示日期和时间
string str4 = d4.format(now);
dateformat d5 = dateformat.getdatetimeinstance(dateformat.full,dateformat.full); //显示日期,周,时间(精确到秒)
string str5 = d5.format(now);
dateformat d6 = dateformat.getdatetimeinstance(dateformat.long,dateformat.long); //显示日期。时间(精确到秒)
string str6 = d6.format(now);
dateformat d7 = dateformat.getdatetimeinstance(dateformat.short,dateformat.short); //显示日期,时间(精确到分)
string str7 = d7.format(now);
dateformat d8 = dateformat.getdatetimeinstance(dateformat.medium,dateformat.medium); //显示日期,时间(精确到分)
string str8 = d8.format(now);//与short风格相比,这种方式最好用
system.out.println("用date方式显示时间: " + now);//此方法显示的结果和calendar.getinstance().gettime()
system.out.println("用dateformat.getdateinstance()格式化时间后为:" + str1);
system.out.println("用dateformat.getdatetimeinstance()格式化时间后为:" + str2);
system.out.println("用dateformat.gettimeinstance()格式化时间后为:" + str3);
system.out.println("用dateformat.getinstance()格式化时间后为:" + str4);
system.out.println("用dateformat.getdatetimeinstance(dateformat.full,dateformat.full)格式化时间后为:" + str5);
system.out.println("用dateformat.getdatetimeinstance(dateformat.long,dateformat.long)格式化时间后为:" + str6);
system.out.println("用dateformat.getdatetimeinstance(dateformat.short,dateformat.short)格式化时间后为:" + str7);
system.out.println("用dateformat.getdatetimeinstance(dateformat.medium,dateformat.medium)格式化时间后为:" + str8);
}
}
运行结果:
复制代码 代码如下:
用date方式显示时间: mon jun 16 20:54:53 cst 2008
用dateformat.getdateinstance()格式化时间后为:2008-6-16
用dateformat.getdatetimeinstance()格式化时间后为:2008-6-16 20:54:53
用dateformat.gettimeinstance()格式化时间后为:20:54:53
用dateformat.getinstance()格式化时间后为:08-6-16 下午8:54
用dateformat.getdatetimeinstance(dateformat.full,dateformat.full)格式化时间后为:2008年6月16日 星期一 下午08时54分53秒 cst
用dateformat.getdatetimeinstance(dateformat.long,dateformat.long)格式化时间后为:2008年6月16日 下午08时54分53秒
用dateformat.getdatetimeinstance(dateformat.short,dateformat.short)格式化时间后为:08-6-16 下午8:54
用dateformat.getdatetimeinstance(dateformat.medium,dateformat.medium)格式化时间后为:2008-6-16 20:54:53
方法二:用java.util.calendar类来实现,看下面:
复制代码 代码如下:
import java.util.*;
import java.text.*;
//以下是利用calendar类来实现日期时间的,和date类相比较比较简单
public class testdate2 {
public static void main(string[] args) {
calendar ca = calendar.getinstance();
int year = ca.get(calendar.year);//获取年份
int month=ca.get(calendar.month);//获取月份
int day=ca.get(calendar.date);//获取日
int minute=ca.get(calendar.minute);//分
int hour=ca.get(calendar.hour);//小时
int second=ca.get(calendar.second);//秒
int weekofyear = ca.get(calendar.day_of_week);
system.out.println("用calendar.getinstance().gettime()方式显示时间: " + ca.gettime());
system.out.println("用calendar获得日期是:" + year +"年"+ month +"月"+ day + "日");
system.out.println("用calendar获得时间是:" + hour +"时"+ minute +"分"+ second +"秒");
system.out.println(weekofyear);//显示今天是一周的第几天(我做的这个例子正好是周二,故结果显示2,如果你再周6运行,那么显示6)
}
}
运行结果是:
复制代码 代码如下:
用calendar.getinstance().gettime()方式显示时间: mon jun 16 21:54:21 cst 2008
用calendar获得日期是:2008年5月16日
用calendar获得时间是:9时54分21秒
总结:中的来说,方法二是最方便的,方法一显得分笨拙,不过看个人喜欢了。
还有一种方法利用
复制代码 代码如下:
system.currenttimemillis()
上一篇: 用JSP/ASP创建WAP应用