我正在使用基于 java 的工具,并且有一个日期格式的配置选项,我已将其设置为“MM/dd/yy hh:mma”,但显然预期为“am”或“pm”,而不是“a”或“ p' 因为输入日期未被识别。例如 2008 年 12 月 31 日下午 3:28
这种特定格式是否有这样的 SimpleDateFormat 规范?(我假设正在使用这种 Java 方法。)接下来我会询问工具供应商,但 SO 似乎是“去”的地方!
TIA
我正在使用基于 java 的工具,并且有一个日期格式的配置选项,我已将其设置为“MM/dd/yy hh:mma”,但显然预期为“am”或“pm”,而不是“a”或“ p' 因为输入日期未被识别。例如 2008 年 12 月 31 日下午 3:28
这种特定格式是否有这样的 SimpleDateFormat 规范?(我假设正在使用这种 Java 方法。)接下来我会询问工具供应商,但 SO 似乎是“去”的地方!
TIA
你可以这样做
public static void main(String[] args) throws ParseException {
DateFormatSymbols instance = DateFormatSymbols.getInstance();
instance.setAmPmStrings(new String[]{"a","p"});
SimpleDateFormat format = new SimpleDateFormat("MM/dd/yy hh:mma",instance);
Date parsedDate = format.parse("12/31/2008 3:28p");
System.out.println(parsedDate);
}
这不是您想听到的答案,但恐怕,如果您只被允许输入日期格式,那么您无能为力,除非您能以某种方式附加一个“M”。根据SimpleDateFormat的 javadoc 中的示例,单个“a”接受 AM 或 PM。