java中的时间操作

转载 2006年06月19日 15:12:00

java中的时间操作

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时间操作工具类封装

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

Java的时间操作玩法实例若干

众所周知,时间日期在业务中十分重要,也是几乎所有开发人员必须处理的。除了一些框架和语言提供的时间日期处理工具之外,一些操时间日期的代码也是广大开发人员必备的。因此我们常常将其作为工具类放在项目中。 ...
  • sinat_26342009
  • sinat_26342009
  • 2015年08月14日 17:26
  • 668

Java8里面的日期操作整理

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

Java常用类库--日期操作类

1、Date类 在java.util包中定义了Date类,实用简单,直接输出其实例化对象即可。 如果希望按照自己的格式输出时间,可以使用Calendar类。 import java.util.Dat...
  • waldmer
  • waldmer
  • 2013年10月21日 16:14
  • 1743

java 中的时间操作

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); Date parse1 = sdf.parse(time1);...
  • u012265873
  • u012265873
  • 2013年09月27日 16:38
  • 288

java中的时间操作

java中的时间操作不外乎这四种情况:1、获取当前时间2、获取某个时间的某种格式3、设置时间4、时间的运算好,下面就针对这三种情况,一个一个搞定。 一、获取当前时间 有两种方式可以获得,第一种,使用D...
  • squall098
  • squall098
  • 2006年08月06日 12:12
  • 1114

JAVA中的时间操作

经常看见jsp版里有人问时间操作的问题,这些问题一般包括:取当前时间,把一个指定的字符串时间转化成时间类型,求两个时间之间的天数,求一段时间以前的时间,求一段时间以后的时间,在这里就把这些问题汇总一下...
  • xiangbo520
  • xiangbo520
  • 2004年09月14日 16:37
  • 605

java中的时间操作

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

mongodb 时间操作

时间存放到mongo需要转换 $v3 = '2014' new \MongoDate(strtotime($v3)
  • terry_water
  • terry_water
  • 2014年10月10日 12:31
  • 1072

JAVA中的日期时间操作

// 字符串转化成时间类型(字符串可以是任意类型,只要和SimpleDateFormat中的格式一致即可)java.text.SimpleDateFormat sdf = new java.text....
  • it_man
  • it_man
  • 2006年12月05日 11:09
  • 1427
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java中的时间操作
举报原因:
原因补充:

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