如何进行日期时间转换

时间:2016-10-09 09:01:44

标签: android sql-server json datetime

这是我第一次使用MSSQL(不是我控制)和WebServices(也是第三方)

无论如何,我从它们返回JSON数组,其中一个返回是Datetime。返回如下:(FieldName:DataReturn) CreatedDateTime: /日期(1474300800000 + 0800)/

我试着谷歌,但我认为我没有正确的“关键字”,所以我无法得到任何示例/教程。

所以在android studio中,如何将上述内容转换/格式化为YYYY / MM / DD或DD / MM / YYY

由于

1 个答案:

答案 0 :(得分:1)

在您的情况下,时间戳等于1474300800000。以下是格式化日期的方法:

    String timestamp = "/Date(1474300800000+0800)/";
    Calendar cal = Calendar.getInstance();        
    SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd");

    cal.setTimeInMillis(Long.valueOf(timestamp.substring(6,19)).longValue());
    dateFormat.setCalendar(cal);

    String formatted = dateFormat.format(cal.getTime());

另外,正如我所看到的,JSON数据还包含TimeZone信息(在您的情况下为+0800)。如果您想为Calendar对象指定时区,请按照以下步骤操作:

TimeZone tz = TimeZone.getTimeZone("GMT+0800") // Add "GMT" at the beginning.
Calendar cal = Calendar.getInstance(tz);