java中的时间操作 一

原创 2006年06月19日 11:33:00

java中的时间操作一

 文/Ray

java中的时间操作不外乎这四种情况:

1、获取当前时间

2、获取某个时间的某种格式

3、设置时间

4、时间的运算

好,下面就针对这三种情况,一个一个搞定。

 

一、获取当前时间

 

有两种方式可以获得,第一种,使用Date类。

j2SE的包里有两个Date类,一个是java.sql.Date,一个是java.util.Date

这里,要使用java.util.Date。获取当前时间的代码如下

Date date = new Date();

date.getTime();

还有一种方式,使用System.currentTimeMillis();

 

这两种方式获得的结果是一样的,都是得到一个当前的时间的long型的时间的毫秒值,这个值实际上是当前时间值与1970年一月一号零时零分零秒相差的毫秒数。

当前的时间得到了,但实际的应用中最后往往不是要用这个long型的东西,用户希望得到的往往是一个时间的字符串,比如“2006618号”,或“2006-06-18”,老外可能希望得到的是“06-18-2006”,诸如此类等等。这就是下一个要解决的问题

 

二、获取某个时间的某种格式

 

获取时间的格式,需要用到一个专门用于时间格式的类java.text.SimpleDateFormat

首先,定义一个SimpleDateFormat变量

SimpleDateFormat sdf = new SimpleDateFormat("",Locale.SIMPLIFIED_CHINESE);

这个构造函数的定义如下:

SimpleDateFormat(String pattern, Locale locale)

第一个参数pattern,我们后面再解释,这里我们使用一个"",第二个参数,是用来设置时区的,这里用到了java.util.Locale这个类,这个类了面定义了很多静态变量,直接拿过来用就OK,我们把时区设置为Locale.SIMPLIFIED_CHINESE,只看名字,这个静态变量的意义已经很清楚了。

 

接下来我们使用这个SimpleDateFormat把当前时间格式化为一个如下格式的时间字符串“XXXXXXXX_XXXXXX秒”,代码:

sdf.applyPattern("yyyy年MM月dd日_HH时mm分ss秒");

String timeStr = sdf.format(new Date());

 

获取时间格式的函数是format,这个函数的参数是java.util.Date对象,这个没有什么花头。

要说明一下的是这个pattern,所谓的模式。这里,yyyy,MM,dd等,这就是模式。

我们可以在SimpleDateFormat的构造函数中指定模式,比如

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd",Locale.SIMPLIFIED_CHINESE);

也可以获取时间格式的时候使用applyPattern函数临时指定,上面的例子就是这样。

什么字符代表什么,这是j2se约定好的,设置模式的时候,我们可以使用约定好的字符加上任何我们想要的字符串。

j2se对字符所代表的模式的约定列表如下:

 

 

Letter Date or Time Component Presentation
G Era designator Text
y Year Year
M Month in year Month
w Week in year Number
W Week in month Number
D Day in year Number
d Day in month Number
F Day of week in month Number
E Day in week Text
a Am/pm marker Text 
H Hour in day (0-23) Number
k Hour in day (1-24) Number
K Hour in am/pm (0-11)  Number
h   Hour in am/pm (1-12)  Number
m   Minute in hour  Number
s   Second in minute  Number
S   Millisecond  Number  
z   Time zone   General time zone 
Z   Time zone  RFC 822 time zone 

 

 

相关文章:java中的时间操作,第二部分 

java时间操作大全

import java.util.Date;    import java.util.Calendar;   import java.text.SimpleDateFormat;   publi...
  • u012365843
  • u012365843
  • 2017年05月08日 18:04
  • 287

Java中的日期操作

在日志中常用的记录当前时间及程序运行时长的方法: public void inject(Path urlDir) throws Exception { SimpleDateFormat ...
  • jediael_lu
  • jediael_lu
  • 2015年02月16日 17:55
  • 55855

java中关于时间日期操作的常用函数

java中关于时间日期操作的常用函数1.计算某一月份的最大天数Calendar time=Calendar.getInstance(); time.clear(); time.set(Calendar...
  • hbcui1984
  • hbcui1984
  • 2006年10月12日 14:12
  • 7639

Java中各种对日期的操作,加日期,减日期

Date d=new Date();     SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd");     System.out.prin...
  • lanxingfeifei
  • lanxingfeifei
  • 2016年04月11日 15:29
  • 7456

java日期操作大全

  • 2014年07月07日 17:02
  • 126KB
  • 下载

Java中的日期操作

ate :         getTime() 、setTime() SimpleDateFormate :   Formate(Date)、 parse(String s) Calendar :...
  • comeandgo201205
  • comeandgo201205
  • 2017年06月20日 13:38
  • 127

Java8里面的日期操作整理

java8里面的日期操作
  • cainiao_user
  • cainiao_user
  • 2017年08月17日 10:37
  • 253

JAVA时间操作工具类封装

继上一篇文件操作工具类,奉上时间操作工具类
  • dly120219891208
  • dly120219891208
  • 2014年06月26日 09:59
  • 518

java中的时间操作一

java中的时间操作一 文/Rayjava中的时间操作不外乎这四种情况:1、获取当前时间2、获取某个时间的某种格式3、设置时间4、时间的运算好,下面就针对这三种情况,一个一个搞定。 一、获取当前时间 ...
  • iversonlee
  • iversonlee
  • 2006年07月30日 14:58
  • 520

java中的时间操作 一

java中的时间操作不外乎这四种情况:1、获取当前时间2、获取某个时间的某种格式3、设置时间4、时间的运算好,下面就针对这三种情况,一个一个搞定。 一、获取当前时间 有两种方式可以获得,第一种,使用D...
  • ahhsxy
  • ahhsxy
  • 2010年11月04日 14:53
  • 293
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java中的时间操作 一
举报原因:
原因补充:

(最多只允许输入30个字)