可以请任何人向我解释,DateTime如何在AM/PM方面工作?JodaTime日期时间和处理与AM/PM的区域设置
public DateTime(
int year,
int monthOfYear,
int dayOfMonth,
int hourOfDay,
int minuteOfHour,
int secondOfMinute,
int millisOfSecond,
DateTimeZone zone) {
super(year, monthOfYear, dayOfMonth,
hourOfDay, minuteOfHour, secondOfMinute, millisOfSecond, zone);
}
我知道我可以通过DateFormat和解析字符串来处理AM/PM,但我对这种方法很感兴趣。我无法弄清楚这一点。由于DateTimeZone不直接与Locale关联,Chronology也不会。
是否必须手动将基于AM/PM信息的hourOfDay更改为24小时类型?
我正在使用一个UI的html表单控件>> http请求6个参数,基于Locale(y,m,d,h,m,AM/PM)/(y,m,d,h,m )>>现在我想通过JodaTime的DateTime对象从这些5/6值创建Date对象。如果没有我手动将(y,m,d,h,m,AM/PM)转换为(y,m,d,h,m),有没有可能?
手动我是这样做的
public static Date getDateSinceUTC2(Target orderBean, TimeZone tz) {
int ap = orderBean.getDeadLineAmPm();
int year = orderBean.getDeadLineYear();
int month = orderBean.getDeadLineMonth();
int day = orderBean.getDeadLineDay();
int hour = orderBean.getDeadLineHour();
int minute = orderBean.getDeadLineMinute();
if (ap == 1) {
hour += 12;
}
month++;
DateTime dt = new DateTime(year, month, day, hour, minute, 0, 0, DateTimeZone.forID(tz.getID()));
return new Date(dt.getMillis());
}
对于AM/PM而言,你是什么意思?你想做什么?我非常了解乔达时间,但我无法分辨“处理”AM/PM的含义。 –
编辑,问题是,DateTime是否只接受非美国的日期格式? – lisak
“日期格式”是一个字符串表示形式,而不是“使用AM/PM”概念。 –