我正在以YYYY/MM/DD HH:MM:SS
格式将日期更改为字符串。我想将其更改为mm/dd/yyyy HH:mm:ss
并且还会显示AM和PM我该怎么做呢。请帮助我
谢谢
答案 0 :(得分:34)
要获取AM PM和12小时日期格式,请使用hh:mm:ss a
作为字符串格式化程序,WHERE hh
表示12小时格式,a
表示AM PM格式。
注意: HH适用于24
小时,而hh适用于12
小时日期格式
SimpleDateFormat formatter = new SimpleDateFormat("mm/dd/yyyy hh:mm:ss a");
String newFormat = formatter.format(testDate);
示例强>
String date = "2011/11/12 16:05:06";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/mm/dd HH:MM:SS");
Date testDate = null;
try {
testDate = sdf.parse(date);
}catch(Exception ex){
ex.printStackTrace();
}
SimpleDateFormat formatter = new SimpleDateFormat("mm/dd/yyyy hh:mm:ss a");
String newFormat = formatter.format(testDate);
System.out.println(".....Date..."+newFormat);
答案 1 :(得分:10)
您可以将SimpleDateFormat用于相同类型的任何日期操作。
SimpleDateFormat sourceFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
SimpleDateFormat DesiredFormat = new SimpleDateFormat("MM/dd/yyyy HH:MM:SS a");
// 'a' for AM/PM
Date date = sourceFormat.parse("2012/12/31 03:20:20");
String formattedDate = DesiredFormat.format(date.getTime());
// Now formattedDate have current date/time
Toast.makeText(this, formattedDate, Toast.LENGTH_SHORT).show();
答案 2 :(得分:1)
使用android.text.format.Time
进行转化。您可以将时间作为文本传递,它将使用timeInstance.format("")
;
你需要提供格式化程序。
参考以下内容: 时间:http://developer.android.com/reference/android/text/format/Time.html 格式化程序:http://pubs.opengroup.org/onlinepubs/007908799/xsh/strftime.html
您可以使用格式化程序字符串的任意组合来处理它:)
答案 3 :(得分:1)
只需使用Time类。尝试类似的东西。
Time time = new Time();
time.set(Long.valueOf(yourTimeString));
如果你真的需要一个Date对象,试试这个。
Date date = new Date(Long.parse(yourTimeString));
答案 4 :(得分:0)
您可以使用SimpleDateFormat或DateFormat,这是示例
SimpleDateFormat gsdf = new SimpleDateFormat("YYYY/MM/DD HH:mm:ss");
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss a");
try{
Date d = gsdf.parse("2011/12/13 16:17:00");
System.out.println("new date format " + sdf.format(d));
}catch(Exception){
// handle exception if parse time or another by cause
}
答案 5 :(得分:0)
public static String getFormatedDate(String strDate, String sourceFormate,
String destinyFormate) {
SimpleDateFormat df;
df = new SimpleDateFormat(sourceFormate);
Date date = null;
try {
date = df.parse(strDate);
} catch (ParseException e) {
e.printStackTrace();
}
df = new SimpleDateFormat(destinyFormate);
return df.format(date);
}
并使用
getFormatedDate(strDate,
"yyyy-MM-dd HH:mm:ss", "mm/dd/yyyy")