Java将格式化的Calendar对象传递给方法

时间:2016-06-09 21:27:18

标签: java calendar format

我想将格式化的时间戳传递给使用Calendar的方法(使用Java 1.6.0_22)。我有一个带有此签名的方法:

public void setTimestamp(Calendar param0);

要获得时间戳,我这样做了:

Calendar cal = Calendar.getInstance();
cal.set(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), cal.get(Calendar.DAY_OF_WEEK), 
        cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE), cal.get(Calendar.SECOND));

我希望它以这种方式格式化:

yyy-MM-ddTHH:mm:ss

然后将其传递给方法。我不能改变方法,因为我没有做到。我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:1)

您需要的是首先将字符串转换为Date,然后将其设置为Calendar

    String input = "2016-05-11T14:44:09";
    java.util.Date date = new java.text.SimpleDateFormat("yyy-MM-dd'T'HH:mm:ss").parse(input);
    Calendar cal = Calendar.getInstance();
    cal.setTime(date);
    obj.setTimestamp(cal);