java format时间格式,java String.Format() 日期格式用法

原文传送门:http://solodu.javaeye.com/blog/454546

JDK1.5中,String类新增了一个很有用的静态方法String.format():现有一个时间'20090903'要转化成指定时间的java.util.Date格式

private Date getStartGregorianTime(String date) {

Date d_date = DateUtil.parseDate(date);

int year = new Integer(String.format("%tY", d_date));

int month = new Integer(String.format("%tm", d_date));

int day = new Integer(String.format("%td", d_date));

return new GregorianCalendar(year, month-1, day, 0, 0, 0).getTime();

}

private Date getEndGregorianTime(String date) {

Date d_date = DateUtil.parseDate(date);

int year = new Integer(String.format("%tY", d_date));

int month = new Integer(String.format("%tm", d_date));

int day = new Integer(String.format("%td", d_date));

return new GregorianCalendar(year, month-1, day, 23, 59, 59).getTime();

}

以下为String format()中参数的定义:

日期/时间转换

以下日期和时间转换的后缀字符是为 't' 和 'T' 转换定义的。这些类型相似于但不完全等同于那些由 GNU date 和 POSIX strftime(3c) 定义的类型。提供其他转换类型是为了访问特定于 Java 的功能(如将 'L' 用作秒中的毫秒)。

以下转换字符用来格式化时间:

'H'     24 小时制的小时,被格式化为必要时带前导零的两位数,即 00 - 23。

'I'     12 小时制的小时,被格式化为必要时带前导零的两位数,即 01 - 12。

'k'     24 小时制的小时,即 0 - 23。

'l'     12 小时制的小时,即 1 - 12。

'M'     小时中的分钟,被格式化为必要时带前导零的两位数,即 00 - 59。

'S'     分钟中的秒,被格式化为必要时带前导零的两位数,即 00 - 60 ("60" 是支持闰秒所需的一个特殊值)。

'L'     秒中的毫秒,被格式化为必要时带前导零的三位数,即 000 - 999。

'N'     秒中的毫微秒,被格式化为必要时带前导零的九位数,即 000000000 - 999999999。

'p'     特定于语言环境的 上午或下午 标记以小写形式表示,例如 "am" 或 "pm"�

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值