VVL1295

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

字符串与Date的互相转化:

  字符串转为Date对象:

     SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
        String string = "20160404";
        Date date = format.parse(string);

  Date对象转化成字符串:

SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
String string = "20160404";
Date date = format.parse(string);
System.out.println(date.toString());

Timestamp与字符串的互相转化:

  字符串转为Timestamp对象:

SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
String string = "20160404";
Date date = format.parse(string);
Timestamp timestamp = new Timestamp(date.getTime());

   Timestamp对象转为字符串对象:

SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
String string = "20160404";
Date date = format.parse(string);
Timestamp timestamp = new Timestamp(date.getTime());
String timestampStr = timestamp.toString();

 

  SimpleDateFormat 使用注意点:

        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
        String dateStr = "2016-09-05";
        Date date = dateFormat.parse(dateStr);
        System.out.println(dateFormat.format(date));

  以上这段代码并不会抛出异常,且输出的格式并非我们所期待的,20151209;

  原因是:parse() 方法是选取字符串的开头的若干个字符进行解析的,还是上面的例子,向 dateStr 赋值 “2016-09-”,输出的结果是一样的,如果要解析严格按照格式“yyyyMMdd”,则要在解析前,加上代码--dateFormat.setLenient(false);

  这样才能让 dateFormat 解析时严格按照这个格式,加上后,上面的代码运行时会抛出 ParseException;

posted on 2016-09-05 21:30  bobo2018  阅读(161)  评论(0)    收藏  举报