java日期类型互转

从 JDK 1.1 开始,应该使用 Calendar 类实现日期和时间字段之间转换,使用 DateFormat 类来格式化和解析日期字符串。Date 中的相应方法已废弃。 

下面代码中看不见的部分选中全部能显示。


1. String <=> java.util.Date

[java]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. //String => java.util.Date  
  2. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
  3. String dstr = "2014-9-9 15:13:53";  
  4. java.util.Date date = sdf.parse(dstr);   
  5.   
  6. //java.util.Date => String  
  7. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
  8. java.util.Date date = new java.util.Date();  
  9. System.out.println(sdf.format(date));  

2. java.util.Date <=> java.sql.Date

[java]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. //java.util.Date => java.sql.Date  
  2. java.util.Date uDate = new java.util.Date();  
  3. java.sql.Date sDate = new java.sql.Date(uDate.getTime());  
  4.           
  5. //java.sql.Date => java.util.Date  
  6. //很少用到这种转换,同上  


3. String <=> java.sql.Date

[java]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. // String => java.sql.Date  
  2. // 这个可以分成2种情况:  
  3. // (1)String类型的日期是yyyy-mm-dd格式的,可以直接用valueOf()方法进行转化,注意,非yyyy-mm-dd格式转化将抛出IllegalArgumentException错误!  
  4. java.sql.Date sDate = java.sql.Date.valueOf("2014-9-9");  
  5.   
  6. // java.sql.Date => String  
  7. // (2) String类型非yyyy-mm-dd格式的,必须先转换成java.util.Date类型,再转换成java.sql.Date类型  
  8. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
  9. String dstr = "2014-9-9 15:13:53";  
  10. java.util.Date uDate = sdf.parse(dstr);  
  11. java.sql.Date sDate = new java.sql.Date(uDate.getTime());         
  12.           
  13. //java.sql.Date => String   
  14. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
  15. java.sql.Date sDate = java.sql.Date.valueOf("2014-9-9");  
  16. System.out.println(sdf.format(sDate));  


附录:

此文章转载自http://blog.csdn.net/chen_zw/article/details/39098831。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值