今天做日志分析,遇到了一个难题:字符串与日期之间的转换。

大家都知道Java要用SimpleDateFormat来转换,在学习Java日期转换的时候日期字符串都是2019-12-24 16:23:52或者12/24/2019 16:23:52格式的,但是日志中一部不是这种格式。

这次在日志中遇到了这种格式:02/Dec/2019:12:59:10 +0800,刚开是看见有点懵,月份不是数字而是字符,不管怎么说还是要先尝试一下。

当然还是要用SimpleDateFormat来转换,代码如下:

String str = "02/Dec/2019:12:59:10 +0800";
SimpleDateFormat sdf = new SimpleDateFormat("dd/MMM/yyyy:HH:mm:ss Z +0800");
Date parse = sdf.parse(str);
System.out.println(parse);

结果:

看来这样是不行的
既然失败了,就要查资料了,经过一番查找学习,终于找到了方法

  1. +0800表示的是时区的信息,用Z可以解析
  2. Dec这个月份只有用Locale.ENGLISH才能解析,如果new SimpleDateFormat(“dd/MMM/yyyy:hh:mm:ss Z”),这时解析器使用的是Locale.getDefault(),即Local.Chinese,所以解析会出错
    代码如下:
String str = "02/Dec/2019:12:59:10 +0800";
SimpleDateFormat sdf = new SimpleDateFormat("dd/MMM/yyyy:HH:mm:ss Z", Locale.ENGLISH);
Date parse = sdf.parse(str);
System.out.println(parse);

结果:

这样就可以了

不过还是想试一下中文,如02/三月/2019:8:29:10 +0800

String str = "02/三月/2019:8:29:10 +0800";
//默认使用的是Locale.getDefault(),即Local.Chinese,可是省略,也可以加上
SimpleDateFormat sdf = new SimpleDateFormat("dd/MMM/yyyy:HH:mm:ss Z");
Date parse = sdf.parse(str);
System.out.println(parse);

结果也是正确的

[02/Dec/2019:12:59:10 +0800]之日期转换相关推荐

  1. 【AI视野·今日CV 计算机视觉论文速览 第172期】Tue, 10 Dec 2019

    AI视野·今日CS.CV 计算机视觉论文速览 Tue, 10 Dec 2019 Totally 77 papers

  2. linux查看采集卡内核,MAGEWELL美乐威Pro Capture系列视频采集卡驱动1.3.0.4186版For Linux(2019年12月10日发布)...

    驱动说明 MAGEWELL美乐威Pro Capture系列视频采集卡驱动1.3.0.4186版For Linux(2019年12月10日发布) MAGEWELL Pro Capture系列视频采集卡最 ...

  3. 每日总结-2019年12月10日(如切如磋,如琢如磨)

    每日总结-2019年12月10日(如切如磋,如琢如磨) 今天也是我第一天打算这样去做.虽然另一个我告诉我不要这样写,但我还是想写下这段话.在研一开始的时候我就应该做这件事情,并坚持下来.不过现在的我总 ...

  4. 微软将于2019年12月10日终止Windows 10移动支持

    Windows 10 Mobile support is coming to an end in December. Microsoft stopped developing features for ...

  5. 2020德勤面试开始了吗_2020下半年教师资格证面试时间已出!12月10日开始报名

    安徽省2020年下半年中小学教师资格考试面试详情 一.面试时间安排 (一)报名:2020年12月10日8:00-13日17:00: (二)审核:2020年12月10日8:00-14日17:00: (三 ...

  6. 微软对 Windows 10 Mobile 的支持将于12月10日结束

    在 Windows 支持信息的官方 FAQ 页面上显示:对 Windows 10 Mobile 的支持计划将于今年12月10日结束,此后任何用户将不再会获得安全更新.补丁和免费的协助支持等. 为此,微 ...

  7. java中int边界值_数组中重复的数字2019.12.06

    记录一下,记录一下,记录一下,因为我的记忆好像只有10s 题目描述: 在一个长度为n的数组里面,所有元素的范围是[0,n-1],数组中可能存在某些数字是重复的,请判断是否有重复元素,如果有,找出来. ...

  8. 2019.12.31大一练习赛

    2019.12.31大一练习赛 寒假培训第一天,老师认为我们题做得太快了,于是晚上搞了一场练习赛. 第1题 QWQ和QAQ Description QWQ的朋友QAQ开了一个A工厂,但QAQ不是一个很 ...

  9. 优化Docker镜像大小方案 2017年12月10日 17:54:46 阅读数:1774 标

    2019独角兽企业重金招聘Python工程师标准>>> 优化Docker镜像大小方案 2017年12月10日 17:54:46 阅读数:1774 标签: Docker 更多 个人分类 ...

  10. 隐私计算头条周刊(12.4-12.10)

    开放隐私计算 收录于合集 #企业动态36个 #周刊合辑37个 #政策聚焦30个 #隐私计算36个 #隐私计算技术30个 OpenMPC/开放隐私计算社区 隐私计算头条周刊 专注隐私计算,释放数据价值 ...

最新文章

  1. R语言常用sys函数汇总:sys.chmod、Sys.Date、Sys.time、Sys.getenv、Sys.getlocale、sys.getpid、sys.glob、sys.info等
  2. Activiti最全入门教程
  3. 深究AngularJS——排序
  4. windows下安装配置cwrsync
  5. hdu 4539(状压dp)
  6. html table vtop,PART2HTML语言.doc
  7. 转行人工智能,不得不温习的数学知识点
  8. 工程师软技能5:生产力
  9. bgb邻居关系建立模型_知识图谱上的双塔召回:阿里的IntentGC模型
  10. 远程桌面控制VC源码剖析
  11. 2022电大国家开放大学网上形考任务-劳动与社会保障法非免费(非答案)
  12. PPT学习整理(六)从入门到放弃。
  13. 程序员转行量化交易可行吗?
  14. android 部分手机Camera 拍照 图片被旋转90度的解决方法
  15. 用数组输出26个小写字母
  16. sendto()_Linux C函数
  17. 天梯赛 L1-079 天梯赛的善良 (20 分)
  18. Windows10 重装系统后显示字体不清楚的问题如何解决
  19. 内固定取出术后护理_骨折内固定取出术后注意事项
  20. mysql主从配置 GTID 主从配置

热门文章

  1. Qt+OpenCV在arm板上运行实现思路
  2. 永恒之蓝——windows server 2003 漏洞
  3. 关于topk accuracy
  4. namecheap注册域名优惠码
  5. [线性代数] 1.3 n阶行列式
  6. BeEF-XSS实验手记
  7. CentOS 编译安装 Nebula Graph 3.10
  8. H5唤醒支付宝登录授权
  9. 局域网即时通讯软件_做企业即时通讯软件,我们是认真的
  10. python 绘制三维图