我要 写一个程序 就是把命令行 传 个时间参数
然后在把这个 参数传到 数据库中
Date d = null;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
d=(Date) sdf.parse(args[0]);


} catch (ParseException e1) {
e1.printStackTrace();
}
System.out.println(d);
这样 输出 的 时间 是这种格式  Tue Aug 08 00:00:00 CST 2000
但是我需要的格式 是2000-8-8 这种格式
如果我用  =sdf.format(d);  这样 是2000-8-8 这种格式  但是 是字符串
真的 不知道  搞了
希望大家帮下我    

解决方案 »

  1.   

    如果你要这样的话,可以用date.getTime()返回毫秒。import java.sql.Date;//导这个包public class TestTable {
    public static void main(String[] args) {
       Date date=new Date();//参数必填,写你得到毫秒数就可以了。
       System.out.println(date);

    }
    }
      

  2.   

    那是肯定的,因为parse通过的话返回的是系统默认格式的一个日期啊
    && 你要这样子搞有啥目的哩?
      

  3.   

    private static DateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss") ;

    public static Date StrToDate(String s){

    try {
    return sdf.parse(s);
    } catch (ParseException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    return null ;
    }
    }
      

  4.   

    java.sql.Date这个包和你需求一样
      

  5.   

    数据库里存 Tue Aug 08 00:00:00 CST 2000 这种格式才对吧,2008-8-8这种格式不对劲
      

  6.   

    我遇到这种情况都用java.sql.*下的时间类的
      

  7.   

    我的目的 就是   想  从一个输入的 字符串    把这个字符串  转成时间格式 
    再  存到数据库 中 
    数据库  这能 存 这种 格式的   时间格式大家不要  理解错了我的意思~~~
    也不是 new Date(“”)  里面传   毫秒数
      

  8.   

    LZ概念有误...基础没学好..
    不管是System.out.println(d)
    还是System.out.println(df.format(d))输出都是String...
    System.out.println(d)实际上调用的是System.out.println(d.toString())Date本身是以long型来保存日期的,对数据库操作要用java.sql.Date另外,数据库操作,为什么要用Date去存?? 直接用字符串写进sql语句不是一样的? sql会负责转换到合适的格式
      

  9.   

    d=(Date) sdf.parse(args[0]); 
    parse这个方法返回的就是Date类型,所以你不需要再在进行强制类型转换了!这样返回的才是你需要的格式啊!
      

  10.   


    我也知道 System.out.println(d)  是 String 类型
    我也导入了 java.sql.Date 
    数据库里面存储 时间  我是用 datetime 类型(这种类型 2002-9-9) 的  所以 要 对应 的成相同 类型 才插入到数据库里面去的 希望哪位   自己写个 程序   我看看
      

  11.   

    哎,都没说到点子上,开玩笑的。
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); 
    SimpleDateFormate不有个方法:sdf.format(Data对象);
    返回的是就是你想要的格式,
      

  12.   

    http://hi.baidu.com/m2shuai/blog/item/f11bac504522628a8d543080.html
    我的博客有看看哈
    1.Date 转 规定格式的 StringCalendar cdTime = Calendar.getInstance();
    Date newTime = cdTime.getTime();
                      
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    String date=sdf.format(newTime);2. 规定格式的 String 转 Datejava.text.SimpleDateFormat sdf=new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
       Date dat = sdf.parse("2007-05-04 12:56:18");如果要从 Date在转成String :String sDate = String.valueOf(dat);
      

  13.   

    String getDate() {
    String sReturn = null;
    SimpleDateFormat form = new SimpleDateFormat("yyyy-MM-dd");
    sReturn = form.format(new Date());
    return sReturn;
    }
      

  14.   

    java.util.Calendar canlendar = java.util.Calendar.getInstance();
    canlendar.add(java.util.Calendar.DAY_OF_MONTH, i);
    String date;
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    date= sdf.format(canlendar.getTime());
      

  15.   

    Date date = new Date();
    SimpleDateFormat sdf = new SimpleDateFormate("yyyy-MM-dd hh:mm");
    date = sdf.gormat(canlendar.getTime());
      

  16.   

    import java.util.Date;
    import java.text.DateFormat;
    import java.text.ParseException;
    String date_str;
    DateFormat fmt = DateFormat.getDateInstance();
    Date t = fmt.parse(date_str);
      

  17.   

     java.text.DateFormat
     String format(Date date) 
              将一个 Date 格式化为日期/时间字符串 
     Date parse(String source) 
              从给定字符串的开始分析文本,以生成一个日期 
      

  18.   


    import java.util.*;
    import java.text.*;public class StringToDate {
    public static void main(String[] args) {
    String str="2008521";
    SimpleDateFormat sdf=new SimpleDateFormat("yyyyMd");
    Date date= sdf.parse(str,new ParsePosition(0));
    System.out.println(date.toLocaleString());
    }
    }2008-5-21 0:00:00
      

  19.   

    Date d = new Date();
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); 
    结果就是:  sdf.format(d);