java日期类型互转


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


1. String <=> java.util.Date

//String => java.util.Date
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dstr = "2014-9-9 15:13:53";
java.util.Date date = sdf.parse(dstr); 

//java.util.Date => String
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Date date = new java.util.Date();
System.out.println(sdf.format(date));

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

//java.util.Date => java.sql.Date
java.util.Date uDate = new java.util.Date();
java.sql.Date sDate = new java.sql.Date(uDate.getTime());
		
//java.sql.Date => java.util.Date
//很少用到这种转换,同上


3. String <=> java.sql.Date

// String => java.sql.Date
// 这个可以分成2种情况:
// (1)String类型的日期是yyyy-mm-dd格式的,可以直接用valueOf()方法进行转化,注意,非yyyy-mm-dd格式转化将抛出IllegalArgumentException错误!
java.sql.Date sDate = java.sql.Date.valueOf("2014-9-9");

// java.sql.Date => String
// (2) String类型非yyyy-mm-dd格式的,必须先转换成java.util.Date类型,再转换成java.sql.Date类型
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dstr = "2014-9-9 15:13:53";
java.util.Date uDate = sdf.parse(dstr);
java.sql.Date sDate = new java.sql.Date(uDate.getTime());		
		
//java.sql.Date => String 
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.sql.Date sDate = java.sql.Date.valueOf("2014-9-9");
System.out.println(sdf.format(sDate));


附录:




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夜之子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值