1. java字符串转换成日期
//取后面八位,按照yyyyMMdd的格式转为日期//再把日期转为相应的格式的字符串//如果这过程中出现了异常,即不是日期的格式,则直接输出字符串即可 public static void main(String args[]){ String str = "今天的日期是20080830"; try{ String temp = str.subString(str.length()-8); Date date = new DateFormat("yyyyMMdd").parse(temp); String dateStr = new DateFormat("yyyy-MM-dd").format(date); //方法二 //String dateStr = new DateFormat("yyyy年MM月dd日").format(date); System.out.println(str.subString(0, str.length()-8) + dateStr); }catch(Exceptiion e){ System.out.println(str); }}
2. java中怎样将字符串转换成日期形式存入数据库
java将字符串转换成日期,可以使用格式类,实例如下:
(Stringdate_str){
try{
Calendarcal=Calendar.getInstance();//日期类
java.sql.Timestamptimestampnow=newjava.sql.Timestamp(cal.getTimeInMillis());//转换成正常的日期格式
SimpleDateFormatformatter=newSimpleDateFormat("yyyy-MM-ddHH:mm:ss");
ParsePositionpos=newParsePosition(0);
java.util.Datecurrent=formatter.parse(date_str,pos);
timestampnow=newjava.sql.Timestamp(current.getTime());
returntimestampnow;
}
catch(NullPointerExceptione){
returnnull;
}
}
3. Java中如何转字符串转为Date格式
用SimpleDateFormat来转换
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = sdf.parse("2008-08-08 12:10:12");
具体请参考JDK API文档
另外 转换成DATE类型后并不会因为转换前的字符串是什么样子而不同 DATE类型的内部表示永远是一样的 所以你的第2条要求是没有意义的 数据库如何显示这个DATE类型只是数据库自己的关系 和DATE本身无关
如果你希望要自定义Date的显示 同样可是使用SimpleDateFormat类来实现
只需要
String date = sdf.format(new Date());
就可以了