Android通话记录格式通话时间
我正在从通话记录中收集数据。 这是我如何格式化通话的日期我的口味:Android通话记录格式通话时间
DateFormat datePattern = DateFormat.getDateInstance(DateFormat.FULL); //Tuesday, October 18, 2011
Long datelong = Long.parseLong("1318950779497");
String date_str = datePattern.format(datelong);
Date date = new Date(date_str);
formatter = new SimpleDateFormat("d/M/yyyy"); //18/10/2011
newdateformatted = formatter.format(date);
该呼叫的时间:
DateFormat timePattern = DateFormat.getTimeInstance(DateFormat.LONG); //12:40:32 PM GMT+00:00
我如何格式化这个?我想要24小时的时间码。
只需再次进行格式化器只是时间:
SimpleDateFormat timeFormater = new SimpleDateFormat("HH:mm:ss");
timeString = timeFormater.format(date);
注HH:mm:ss
大小写敏感性。 HH
是什么给你的24小时时间格式。
下面的小测试的代码工作对我来说:
import java.text.SimpleDateFormat;
import java.util.Date;
public class Test{
public static void main(String args[]){
Date today = new Date();
SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");
String formated = formatter.format(today);
System.out.println(formated);
}
}
它输出:
15:57:11
它是timeFormater.format(date_str),但它在这一行上给我一个IllegalArgumentException。 – erdomester
哎呀,对不起。我编辑并修复了它。你必须给它实际的日期对象,而不是一个字符串。 –
好的。现在它给我所有日期的00:00:00。如果将格式更改为kk:mm:ss,它会给我24:00:00。我不明白这一点。 – erdomester
我不明白你的问题。看起来你已经在做你想做的事了。 –
我得到的数据如下午3:12:59 GMT + 00:00。我只需要15:12:59 – erdomester