java将date类型转成yyyymmdd_java中的Date怎么转换成YYYYMMDD形式?

展开全部

SimpleDateFormat inSdf = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z", Locale.US);

创建SimpleDateFormat对象的时候使用带Locale的构e69da5e6ba9062616964757a686964616f31333365633938造参数

因为你的星期和月份是用E文写的 所以parse回来的时候自然得用E文的Locale 用默认中文的Locale就会认不出来

btw 你用US的Locale的话 时区也会跑那里去 所以你应该给时区指定GMT+08:00 而不是光一个GMT

参考这段小代码

String s ="Thu, 02 Mar 2006 05:14:25 GMT+08:00";

SimpleDateFormat inSdf = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z", Locale.US);

SimpleDateFormat outSdf = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z", Locale.CHINA);

try {

Date dateS = inSdf.parse(s);

System.out.println(outSdf.format(dateS));

} catch (ParseException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

//1、定义转换格式

SimpleDateFormat formatter  = new SimpleDateFormat("yyyy-MM-dd");

SimpleDateFormat formatter2  = new SimpleDateFormat("yyyyMMdd");

//2、调用formatter2.parse(),将"19570323"转化为date类型  输出为:Sat Mar 23 00:00:00 GMT+08:00 1957

Date  date = formatter2.parse(dateString);

//3、将date类型  (Sat Mar 23 00:00:00 GMT+08:00 1957)转化为String类型

//注意现在用的是formatter来做转换,输出为String类型的:"1957-03-23"

String  dString = formatter.format(date);

//4、将String转化为date,需要注意java.sql.Date.valueOf()函数只能接受参数类型为yyyy-MM-dd类型的

Date data = java.sql.Date.valueOf(dString);

//5、将获取的date类型的出生日期赋值给javabean

personAudit.setBirthDate((emp.getHealthCarePrincipalPerson() != null

&& emp.getHealthCarePrincipalPerson().getBirthTime() != null)?data:null)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值