【问题标题】:Error while parsing a time string [duplicate]解析时间字符串时出错[重复]
【发布时间】:2014-03-24 13:58:54
【问题描述】:

我正在尝试解析一些这样的时间字符串:

String time_string = "10:00 AM";
SimpleDateFormat format = new SimpleDateFormat("hh:mm a");
Date date = null;
try {
    date = format.parse(time_string);
    // Do something with 'date'
} catch (ParseException e) {
    Log.w("Time", e.toString());
}

但解析器失败并出现异常:

java.text.ParseException: Unparseable date: "10:00 AM"

我做错了什么?

【问题讨论】:

    标签: java simpledateformat


    【解决方案1】:

    上午/下午标记可能与您的默认 Locale 尝试不匹配

    SimpleDateFormat format = new SimpleDateFormat("hh:mm a", Locale.ENGLISH);
    

    【讨论】:

    • 那个。谢谢(必须等待 10 分钟才能标记为正确)。只是为了好奇,除了 AM/PM 之外还有哪些其他标记?我从未见过他们的任何翻译。
    • DateFormat 模式组件的完整列表可以在javadoc 中找到。查找当前Locale 日期格式组件值的乐趣,请查看DateFormatSymbols
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多