import java.util.Date;
Date createDate = new Date();
    DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm");
    createDate = df.parse("2006-02-01 12:20");
    StringBuffer sql = new StringBuffer();
    sql.append("update bid_information set asktime_b=?");
    sql.append("where bidnum=?");
    ps = conn.prepareStatement(sql.toString());
    ps.setDate(1,(java.sql.Date)createDate);
    ps.setString(2,"3");
    ps.executeUpdate();异常java.text.ParseException: Unparseable date: "2006-02-01"at java.text.DateFormat.parse(DateFormat.java:334)at te.main(te.java:30)我应该怎样改呢?!

解决方案 »

  1.   

    > createDate = df.parse("2006-02-01 12:20");
    当中的日期是非法的格式
      

  2.   

    至少没发现日期调用的问题!下面这个程序运行得很好!运行于eclipse/j2sdk1.4.2。
    你的运行环境是什么?import java.text.DateFormat;
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Date;public class TestDate { /**
     * @param args
     */
    public static void main(String[] args) {     try {
    Date createDate = new Date();
        DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm");
         createDate = df.parse("2006-02-01 12:20");
         System.out.println(createDate.toString());
    } catch (ParseException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } }}
      

  3.   

    DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm");
    大哥,没有这样的格式吧?
    改成:
    DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:MI");试试啊!!
      

  4.   

    “这种Date”并不能直接送到数据库中去,你需要先用getTime方法得到一个毫秒数,再以此为参数构造一个java.sql.Date。再回到ps.setDate,传进去即可。
      

  5.   

    问题在这里,java.sql.Date 虽然是java.util.Date的子类,
    (java.sql.Date)createDate;
    但把父类对象强制转换成子类对象是不行,因为java.util.Date createDate = new java.util.Date();
    你可以用另外的方法构造java.sql.Date对象。