如何以编程为android的时间以下时间?格式:" 03:45 p.m"。默认情况下,我们使用的是简单的dateformat" HH:MM A"。但是它的输出看起来像PM/AM。我想要时间就像p.m/a.m。因为在三星Galaxy J7中,Prime具有此类型默认时间和日期。请让我知道解决方案或我的问题有任何错误。预先感谢...
确切地说,我需要在以下格式" 03:45 p.m"中获取时间戳。已经准备好功能,但对时间格式有疑问。而不是这种" HH:MM A",哪种格式必须使用?
您可以使用我使用的此类。您需要将日期传递给构造函数和
public static CustomDate getYrMonthDateFormateString(String datestring) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss",Locale.getDefault());
Date d = sdf.parse(datestring);
return new CustomDate(d);
}
public static class CustomDate {
final String dayOfTheWeek;
final String day;
final String monthString;
final String monthStringComplete;
final String monthNumber;
final String year;
final String time;
CustomDate(Date date) {
dayOfTheWeek = (String) DateFormat.format("EEE", date); // Thursday
day = (String) DateFormat.format("dd", date); // 20
monthString = (String) DateFormat.format("MMM", date); // Jun
monthStringComplete = (String) DateFormat.format("MMMM", date); // June
monthNumber = (String) DateFormat.format("MM", date); // 06
year = (String) DateFormat.format("yy", date); // 2013
time = ((String) DateFormat.format("h:mm a", date)).toLowerCase().replace(" ", ""); // 6:00 am
}
public String getDayOfTheWeek() {
return dayOfTheWeek;
}
public String getDay() {
return day;
}
public String getMonthString() {
return monthString;
}
public String getMonthNumber() {
return monthNumber;
}
public String getYear() {
return year;
}
public String getTime() {
return time;
}
public String getMonthStringComplete() {
return monthStringComplete;
}
}
您可以自己转换文本。这样的smth:
private String getTime() {
SimpleDateFormat sdf = new SimpleDateFormat("kk:mm a");
String formated = sdf.format(new Date());
String[] split = formated.split(" ");
String amPm = split[1];
String time;
if(amPm.equals("PM")) {
time = String.format("%s %s",split[0], "p.m.");
} else {
time = String.format("%s %s",split[0], "a.m.");
}
Log.e("MainActivity", "onClick: " + time);
return time;
}