SimpleDateFormat类format方法和parse方法的使用

参考:
http://swiftlet.net/archives/1279
因为在设置格式化模板的时候,会使用占位符来表示字符串的格式,所以要注意一下各个占位符表示的含义。
y 年
M 年中的月份
D 年中的天数
d 月份中的天数
H 一天中的小时数(0-23)
h am/pm 中的小时数(1-12)
m 小时中的分钟数
s 分钟中的秒数
S 毫秒数

SimpleDateFormat构造方法

首先需要使用SimpleDateFormat类的构造函数设置格式化模板。如使用构造方法:public SimpleDateFormat(String pattern);pattern(格式化模板)对于parse方法和format方法的意义各不相同。具体来说,对于parse方法,则表示要解析的字符串应当具有何种格式,不符合则无法解析,若字符串同格式化模板指定的一致,则将此格式的String转为Date类型对象;而对于format方法,表示以哪种格式将Date对象格式化为String。

        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  

下面我们来看看具体的代码加深理解。

parse

parse方法声明如下:
public Date parse(String source) throws ParseException;

public static void testParse() {
		String str = "2013-01-21 15:10:20";  
        Date date=null ;  
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
        try {  
            date = sdf.parse(str);  
            System.out.println(date); 
            System.out.println(date.getTime());
        } catch (ParseException e) {  
            System.out.println(e.getMessage());  
        }  
	}

需要注意的是,str的格式必须与构造器所指定的格式化模板一样。因为这是在SimpleDateFormat对象将此格式的字符串转为Date类型的对象。如果2者格式不一致则无法解析,所提示的信息为:Unparseable date: “2013-01-21 15:10:20”;也就无法得到Date类型的对象。

format

format方法声明如下:
public final String format(Date date)

public static void testFormat() {
		SimpleDateFormat dateformat=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 ");
		Date d = new Date();
		String a=dateformat.format(d);
		System.out.println("new Date() = "+d);
		System.out.println("时间:"+a);
	}

而format方法则只需要指定格式化模板即可,至于format方法中传入的参数是Date类型的即可。

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值