java数据类型中的日期转换问题

时间:2014-10-20 13:50:44

标签: java

我有一个字符串类型日期。我想先将其更改为date数据类型。但它并没有像我想的那样正确地形成日期。这是我的代码

String a="12/11/2010";

        Date d=new Date();
        SimpleDateFormat as=new SimpleDateFormat("dd/MM/yy");
        d=as.parse(a);
  System.out.println(a);

输出就像这个:Sun Jan 01 00:00:00 IST 2012

但我想在Date数据类型中输出这样的12-10-2014,而不是String数据类型。

2 个答案:

答案 0 :(得分:1)

System.out.println(as.format(d));

您应该使用dateformatter对象格式化日期d。

如果要将其解析为12/11/2010并输出为12-11-2010,则可以使用2个不同的日期格式,一个用于解析,另一个用于输出。实施例

    String a="12/11/2010";

    Date d=new Date();
    SimpleDateFormat as=new SimpleDateFormat("dd/MM/yyyy");
    SimpleDateFormat as1=new SimpleDateFormat("dd-MM-yyyy");
    d = as.parse(a);
    System.out.println(as1.format(d));

答案 1 :(得分:0)

Date是即时的,虽然它有一个不可替换的toString()。相反,您使用DateFormat(就像您拥有的那样)来format输出

String a="12/11/2010";
SimpleDateFormat as=new SimpleDateFormat("dd/MM/yy");
Date d=as.parse(a);
System.out.println(as.format(d));