我在String中有一个时间戳,它在Android应用程序中返回低于值的值
1398876631
如何将其格式化为以下值
11/12/2013 4:21 PM
答案 0 :(得分:1)
请尝试以下功能。在这里你必须通过毫秒和日期格式(如dd-MM-yyyy HH:mm:ss aa)
public static String getDate(long milliSeconds, String dateFormat)
{
// Create a DateFormatter object for displaying date in specified format.
DateFormat formatter = new SimpleDateFormat(dateFormat);
// Create a calendar object that will convert the date and time value in milliseconds to date.
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(milliSeconds);
return formatter.format(calendar.getTime());
}
实施例
Log.i("====== Date "," :: "+getDate(1398876631,"dd/MM/yyyy HH:mm aa"))
答案 1 :(得分:1)
将您的时间戳转换为日期
Date d = new Date(Long.parseLong(timestamp) * 1000);
然后使用SimpleDateFormat,您可以根据需要设置日期格式
String result = new SimpleDateFormat("dd/MM/yyyy hh:mm").format(d);
答案 2 :(得分:1)
您的问题解答
SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy h:mm a");
String date = df.format(Calendar.getInstance().getTime());
Log.d("date",date.toString());// Output 01/09/2014 10:59 AM
您可以在哪里使用DateFormat模式,例如:
"yyyy.MM.dd G 'at' HH:mm:ss z" ---- 2001.07.04 AD at 12:08:56 PDT
"hh 'o''clock' a, zzzz" ----------- 12 o'clock PM, Pacific Daylight Time
"EEE, d MMM yyyy HH:mm:ss Z"------- Wed, 4 Jul 2001 12:08:56 -0700
"yyyy-MM-dd'T'HH:mm:ss.SSSZ"------- 2001-07-04T12:08:56.235-0700
"yyMMddHHmmssZ"-------------------- 010704120856-0700
"K:mm a, z" ----------------------- 0:08 PM, PDT
"h:mm a" -------------------------- 12:08 PM
"EEE, MMM d, ''yy" ---------------- Wed, Jul 4, '01
查看此link了解详情。