本文目录一览:
java中的Date怎么转换成YYYYMMDD形式的
SimpleDateFormat inSdf = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z", Locale.US);
创建SimpleDateFormat对象的时候使用带Locale的构造参数
因为你的星期和月份是用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);
java中的Date显示指定为yyyy-MM-dd
实现思路就是先将timestamp转换为字符串,之后字符串转换为日期类型。举例:
long l = System.currentTimeMillis(); //获取当前的timestamp值
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); //定义日期类型格式
String str2 = Timestamp.valueOf(format.format(l)); //转换为字符串
//System.out.println(str2); //打印获取的字符串
Date date = format.parse(str2); //格式化获取到的日期
System.out.println(date);
输出结果:2015-06-27。
java中的Date怎么转换成YYYYMMDD形式?
SimpleDateFormat inSdf = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z", Locale.US);
创建SimpleDateFormat对象的时候使用带Locale的构造参数
因为你的星期和月份是用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);
java怎么把yyyy-mm-dd
//转换成yyyy-MM-dd的字符串
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); //设置日期格式
String date = df.format(new Date());
System.out.println("1:" + date);
//字符串转换成日期
ParsePosition pos = new ParsePosition(0);
java.util.Date datetime = df.parse(date, pos);
//再转换成MM-dd-yyyy的字符串
SimpleDateFormat df2 = new SimpleDateFormat("MM-dd-yyyy"); //设置日期格式
String date2 = df2.format(datetime);
System.out.println("2:" + date2);