注册
 找回密码
 注册
江西广告网
查看: 293|回复: 0
打印 上一主题 下一主题

java中的时间操作

[复制链接]

该用户从未签到

1
跳转到指定楼层
发表于 2008-12-30 11:15:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
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型的东西,用户希望得到的往往是一个时间的字符串,比如“2006年6月18号”,或“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把当前时间格式化为一个如下格式的时间字符串“XXXX年XX月XX日_XX时XX分XX秒”,代码: 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
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表