java - 如何转换 12/31/2008 3 :28p using Java's SimpleDateFormat

标签 java simpledateformat

我正在使用基于java的工具,并且有一个日期格式的配置选项,我将其设置为“MM/dd/yy hh:mma”,但显然预期是“am”或“pm”,而不是“a” ' 或 'p' 因为输入日期未被识别。例如12/31/2008 3:28p

是否有针对这种特定格式的 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);

}

关于java - 如何转换 12/31/2008 3 :28p using Java's SimpleDateFormat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3160247/

相关文章:

java - Android自定义相机预览?

java - 在 SSLHandshake 期间如何处理警告和致命警报

java - 除了 java.text.SimpleDateFormat 之外,还有 java.text.DateFormat 的其他实现吗

Java简单日期格式: Pattern - ParseException

java - 将字符串解析为日期

java - Netbeans 和 Eclipse 并行

java - 如何从字符串设置 JSpinner 的值?

java - SOLR NumericRangeQuery 的空间使用

java - 如何获取A时间和B时间之间的差距?

Java simpledateformat 返回零表示月份