java – AM / PM的Android DateFormat因设备而异
作者:互联网
我正在格式化这样的日期:
public static String toFormattedDate(@NonNull Time time, String toFormat) {
mDateFormat = new SimpleDateFormat(toFormat);
Date date = new Date();
date.setTime(time.toMillis(true));
return mDateFormat.format(date);
}
我使用的格式是:
public static final String TIME = "hh:mm a";
但它在我用于测试的两个设备之间有所不同……
如何在设备之间统一格式化?
解决方法:
您可能必须使用24小时值来确定要追加的内容,以便您可以添加所需的格式.
public static final String TIME = "hh:mm";
然后
String ampm = Integer.parseInt(time.valueOf("hh")) >= 12 ? "PM" : "AM";
...
return mDateFormat.format(date)+" "+ampm;
或者,如果你感到懒惰,你可以不改变TIME的值:
return mDateFormat.format(date).toUpperCase().replace(".","");
标签:java,android,date-format,simpledateformat,android-date 来源: https://codeday.me/bug/20190623/1269007.html