java中的日期时间转换



我有一个日期以IST格式保存在数据库中。

     Date nowDate = new Date();
     Date dateBefore = new Date(nowDate.getTime() - 7* 24 * 3600 * 1000);
     System.out.println("Datebefore-->"+dateBefore);

在上面的代码中,dateBefore被保存在数据库中。

从数据库中,我正在获取数据长值,我必须将其转换为Google DateTime

     Date dateBefore12 = new Date(longvalue); 
    com.google.api.client.util.DateTime dd = new DateTime(dateBefore12, TimeZone.getTimeZone("UTC"));

现在,例如,输出将在2014-07-17T05:23:28.857Z中,我必须将其传递给Google You tube API。

现在,从响应中,我将使用Google DateTime,例如2014-07-17T05:23:28.857Z,我必须增加1分钟,然后将其转换为长时间并保存到db.

将google DateTime转换为long。

 TimeZone utc = TimeZone.getTimeZone("UTC");
    SimpleDateFormat f = new SimpleDateFormat(
            "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
    String input = dd.toString();
    GregorianCalendar cal = new GregorianCalendar(utc);
    cal.setTime(f.parse(input));
    cal.add(Calendar.MINUTE,1);
    Date time = cal.getTime();
    long longvalue1 =cal.getTimeInMillis();

现在我将保存数据并尝试检索它。得到的是2014-07-16T23:54:28.857Z

但是我需要保存日期的值,我已经增加了一分钟的google DateTime格式

SimpleDateFormat也使用时区,因为内部Calendar对象默认为本地时区。如果您不想使用默认时区,那么在调用该格式的parse()方法之前,您应该在其上调用setTimeZone():

f.setTimeZone(utc);

相关内容

  • 没有找到相关文章

最新更新