如何在android中将字符串时间戳转换为datemat?

时间:2016-04-02 05:58:13

标签: android datetime

说明:            我有一个字符串格式的时间戳来自json文件中的服务器。我的时间戳就像这个格式的1454544000。我把这个时间存储到String变量中。

这是我的代码

Timestamp ts=new Timestamp(System.currentTimeMillis());
Date d=new Date(ts.getTime());
Log.e("TimeStamp",""+d.toString());

但它会返回当前的当前日期。我想转换我从json文件获得的时间戳。

如何将上述时间戳转换为datemat ????

5 个答案:

答案 0 :(得分:2)

代码应如下所示:

String dateString = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(new Date(TimeinMilliSeccond));

如果您还想要自定义日期格式,可以尝试使用long timestamp = 1454544000; Date date = new Date(timestamp); 。这是一个示例代码:

SimpleDateFormat

有关SimpleDateFormat formatter = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); String formattedDate = formatter.format(date); 的详细信息,您可以查看以下内容:Simple Date Format

答案 1 :(得分:0)

希望这有帮助

import java.util.Date;
public class HelloWorld{

     public static void main(String []args){
        //Since you mentioned that you have timestamp in string format, so I have taken timestamp as string and parsed it to long in Date()
        String timestamp = "1454544000" ; //Example -> in ms
        Date d = new Date(Long.parseLong(timestamp));
        System.out.println(d);
    }
}

因此,您可以在Android应用中使用这两行:

String timestamp = "1454544000" ; //Example -> in ms
Date d = new Date(Long.parseLong(timestamp));

答案 2 :(得分:0)

将时间从json而不是字符串存储为long,并将其传递给下面的代码:

String time = DateUtils.formatDateTime(this, 1454544000, DateUtils.FORMAT_SHOW_TIME));
String date =  DateUtils.formatDateTime(this, 1454544000, DateUtils.FORMAT_SHOW_DATE));

答案 3 :(得分:0)

将时间戳存储在名为TimeinMilliSeccond的长类型变量中,然后

import java.lang.reflect.*;

class SomeObject{
    private String string;

    void setString(String value){
        string= value;
    }
}

class TestPrivateAccess{
    public static void main(String[] args) throws Exception{
        SomeObject ojb = new SomeObject();
        obj.setString("astring");

        Field field = SomeObject.class.getDeclaredField("string");
        field.setAccessible(true);
        Object value = field.get(obj);
        System.out.println(value);
    }
}

答案 4 :(得分:0)

试试这个

 Use below method for Convert JsonDate to normal format.


public static String ConvertJsonDate(String jsondate) {

    jsondate = jsondate.replace("/Date(", "").replace(")/", "");
    long time = Long.parseLong(jsondate);
    Date d = new Date(time);
    return new SimpleDateFormat("dd/MMM/yyyy").format(d).toString();
   }

    //Now you use this method this way
    String date1 = ConvertJsonDate("Yourjsondate"); //give argument like 1454544000 
    System.out.println(date1);