public static java.sql.Date GetDate()
{
java.sql.Date mDate;
mDate = null;
Calendar cal = Calendar.getInstance();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String mDateTime=formatter.format(cal.getTime());
//return(formatter.parse("mDateTime");
return (java.sql.Date.valueOf(mDateTime));
}
上段代码中,被注释的一行报错,报错信息是,can't convert Date to Date,但是parse的参数明明是字符串啊怎么回事?

解决方案 »

  1.   

    此Date非彼Date
    return(formatter.parse("mDateTime");返回的是java.util.Date
      

  2.   

    晕,眼神不好,我还特地看了看Date类到底是哪个Date类呢,汗,谢谢
      

  3.   


    /** 楼主所提供代码中:
      *注释的那行 return formatter.parse("mDateTime");
      *首先参数就没必要引号,即return formatter.parse(mDateTime);
      *其次是此parse方法必须得捕获可能发生的java.text.ParseException异常
      *三是此parse方法所返回的乃是java.util.Date数据类型,跟楼主所要返回的java.sql.Date不符  *因此,楼主所要实现的基本功能为如下代码:*/
    import java.sql.*;
    import java.text.*;
    import java.util.*;public class Go{
      public static void main(String[] args){
        System.out.println("the result you want is: "+Go.getDate());
      }
      public static java.sql.Date getDate(){ 
        java.sql.Date Date = null; 
        Calendar cal = Calendar.getInstance(); 
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
        String retTime = sdf.format(cal.getTime());     try{
           Date = new java.sql.Date(sdf.parse(retTime).getTime());
        }catch(ParseException pe){
          pe.printStackTrace();
        }    return Date;
      } 
    }
      

  4.   

    晕,return 是个小date,自动变大写Date?
    楼主改改此变量名即可