Java将Nginx输出的日志有日期字符串转成Date类型

原文连接:http://mamicode.com/info-detail-348837.html

原始的Nginx日期数据为:[28/Nov/2014:11:56:09 +0800]

需要将[]替换掉:

 

timeLocal = [28/Nov/2014:11:56:09 +0800]

timeLocal = timeLocal.replace("[", "");timeLocal = timeLocal.replace("]", "");

 

 

 

以下格式需要注意几点:

(1)必须是3个M

(2)+0800表示的是时区的信息,用Z可以解析

(3)必须是Locale.ENGLISH,如果写成CHINESE会报错

 

SimpleDateFormat formatter = new SimpleDateFormat("dd/MMM/yyyy:hh:mm:ss Z", Locale.ENGLISH);
Date date = formatter.parse(timeLocal);
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("转换后的日期格式:"+format.format(date));

你可能感兴趣的:(java)