已经吃了很多次亏了…每每其他调试得得意满满的时候就出来捣乱了
首先是在java中 date和string类型之间的转换就容易出错
直接使用toString默认输出的是
/* Date类的格式: Sat Apr 16 13:17:29 CST 2006 /
data->string
public static String DatetoString(Date dt){ DateFormat df=new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); String myD=df.format(dt); return myD; }string->date
public static Date Trans(String str) { DateFormat df=new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); Date d=null; try { d=df.parse(str); } catch (ParseException e) { e.printStackTrace(); } if(d==null) {System.out.println("格式输入失败");} else { System.out.println("格式转换成功 "+d); } return d; }其中,yyyyMMddHHmmss表示年月日时分秒不可以随便代替 其中可以加入: / - 空格等一切你想塞入的符号 这是月份的表示 其中月份是从0开始的
Calendar cal = Calendar.getInstance(); cal.setTime(new Date()); System.out.println("System Date: " + cal.get(Calendar.MONTH + 1));以下是mysql和java之间传值转化的类 MySql的时间类型有 Java中与之对应的时间类型 date java.sql.Date datetime java.sql.Timestamp timestamp java.sql.Timestamp time java.sql.Time year java.sql.Date
/获得系统时间 java.util.Date date = new java.util.Date(); //将时间格式转换成符合Timestamp要求的格式 String nowTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date); java.sql.Timestamp ts_date = java.sql.Timestamp.valueOf(nowTime)TimeDate->String
Timestamp ts = new Timestamp(System.currentTimeMillis()); String tsStr = ""; DateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); try { //方法一 tsStr = sdf.format(ts); System.out.println(tsStr); //方法二 tsStr = ts.toString(); System.out.println(tsStr); } catch (Exception e) { e.printStackTrace(); }TimeDate->Date
Timestamp ts = new Timestamp(System.currentTimeMillis()); Date date = new Date(); try { date = ts; System.out.println(date); } catch (Exception e) { e.printStackTrace(); }