Java:以java.util.Date格式返回一个String

时间:2012-03-01 13:44:10

标签: java date simpledateformat

我将以201201格式收回输入,这是YYYYMM格式。

现在我想按原样返回值201201,但它应该是java.util.Date格式

我很困惑

String strDate = "201201";  
SimpleDateFormat sdFormat = new SimpleDateFormat("YYYYMM"); 

现在我无法以java.util.Date格式返回值为201201

我已经编辑了YYYYMM格式的问题。

我试过这种方式

public class StringToDate {
    public static void main(String[] args) {
        DateFormat df = new SimpleDateFormat("yyyymm");

        try {
            Date today = df.parse("201201");
            System.out.println(df.format(today));


            //System.out.println("Today = " + df.format(today));
        } catch (ParseException e) {
            e.printStackTrace();
        }
    }
}

3 个答案:

答案 0 :(得分:1)

编辑:mm是分钟MM是月

尝试:DateFormat df = new SimpleDateFormat(“yyyyMM”);

然后使用解析方法:

http://docs.oracle.com/javase/1.4.2/docs/api/java/text/DateFormat.html#parse%28java.lang.String%29

答案 1 :(得分:0)

我唯一看到的是你的SimpleDateFormat声明。它应该是

DateFormat df = new SimpleDateFormat("yyyyMM");

然后,System.out.println(df.format(today));今天将返回“201201”

您需要使用SimpleDateFormat将任何java.util.date转换为所需的格式。

没有格式化输出的java.util.date,例如“Sun Jan 01 00:00:00 EST 2012”作为字符串。

无法使用“yyyyMM”格式本机设置java.util.date对象。

答案 2 :(得分:0)

SimpleDateFormat df = new SimpleDateFormat("yyyymm");应为SimpleDateFormat df = new SimpleDateFormat("yyyyMM");

  • MM =一年中的月份
  • mm =分钟小时