当前位置: 代码迷 >> Java Web开发 >> java格式化Apache的访问日志里面的时间失败,该怎么处理
  详细解决方案

java格式化Apache的访问日志里面的时间失败,该怎么处理

热度:6487   发布时间:2013-02-25 21:21:27.0
java格式化Apache的访问日志里面的时间失败
读取apache的访问日志里面的日期写法是[17/Apr/2012:12:03:46 +0800]
我写的方法想把日期转为标准格式好做比较。
Java code
 public void accessDateToDate(){        Date date = new Date();         java.text.DateFormat df = new java.text.SimpleDateFormat ("dd/MMM/yyyy:HH:mm:ss Z");        String  testdate = "17/Apr/2012:12:03:46 +0800";        try {            date = df.parse(testdate);        } catch (ParseException e) {            e.printStackTrace();        }              }

出错信息:
java.text.ParseException: Unparseable date: "17/Apr/2012:12:03:46 +0800"

------解决方案--------------------------------------------------------
因为你要格式化的字符串中,月份使用E文显示,所以涉及到本地化(方言)问题,所以需要这样:

DateFormat df = new SimpleDateFormat ("dd/MMM/yyyy:HH:mm:ss Z", Locale.ENGLISH);
  相关解决方案