将UTC时间转换为本地android

时间:2016-01-06 11:27:56

标签: android android-date

我从服务器获得UTC时间,例如 - " 2016-01-04T06:27:23.92"。我想把它转换为2016年1月4日和当地合成的时间。我正在使用以下代码,但它不起作用 -

Date localTime = new Date(commentDate);
String format = "yyyy/MM/dd HH:mm:ss";
SimpleDateFormat sdf = new SimpleDateFormat(format);
Date gmtTime = new Date(sdf.format(localTime));
Date fromGmt = new Date(gmtTime.getTime() + TimeZone.getDefault().getOffset(localTime.getTime()));
commentDate = commentDate.substring(0, commentDate.lastIndexOf("."));

1 个答案:

答案 0 :(得分:0)

试试这个

try {
     //commentDate = "2016-01-04T06:27:23.92"
     Date date1 = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss").parse(commentDate);

     Date fromGmt = new Date(date1.getTime() + TimeZone.getDefault().getOffset(date1.getTime()));
     Log.e("Date",new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(fromGmt)); // print 2016/01/04 11:57:23 (0530 hour deviation)
} catch (ParseException e) {
     e.printStackTrace();
}

您可以根据自己的要求更改日期格式。