目录

场景描述&排查

原因

处理


场景描述&排查

在前后端分离的交互当中,对一个JSON转换成object对象时出现了这样的问题

异常的字符索引为10,也就是说那个空格有问题。

把异常的日期字符串抓出来对比了一下

奇怪。两个空格明明长得是一模一样的,为什么会报错呢?

两个运行试一试。

 

戏剧性的问题出现了。两个一模一样的日期字符串,一个能正常运行,另一个不能。异常依旧说明那个不能正确运行的日期字符串中的空格有问题。但是根据上面的排查已经确定了那个空格并非全角空格,全角空格会比半角空格“胖”一点很容易用肉眼看出来区别。

排查到这里仿佛陷入了尴尬的境地,直到我想起了字符的ASCII码...毕竟肉眼可见的问题已经排查完了,现在就剩下肉眼不可见的东西还没排查了。

在java中,想要拿到某个字符的ASCII码需通过int类型来接收。当然想要从字符串里面拿到某个字符的ASCII码还得这么写:

接下来是获得两个空格的编码。

运行

可以看到那个正常的空格是32,对应ASCII码表是正确的。但是这个160的空格是怎么弄出来的呢?

毕竟这个有问题的日期字符串是前端传递过来的,也就是说前端在拼接日期字符串的时候使用了不合适的空格。

最后询问了一下前端发现前端使用的是 '\xa0' 作为空格的拼接符...

原因

前端使用了一个不合适的空格替换符 '\xa0'。导致后端日期格式转换器无法识别这样的空格出现异常。

处理

前端将 '\xa0' 换成32码点的空格(手打的空格)解决问题;

java.time.format.DateTimeParseException: Text ‘xxxx-xx-xx xx:xx:xx‘ could not be parsed at index 10相关推荐

  1. Exception in thread main java.time.format.DateTimeParseException: Text '31-Dec-13' could not be pa

    完整报错如下: ------------------------------看下lines----------------------------------- lines=Stream(Date, ...

  2. 解决 java.time.format.DateTimeParseException:Text ‘XXX‘ could not be parsed

    项目场景: java解析json中的时间,时间text为Fri May 06 18:11:56 +0000 2022, format为:EEE MMM dd HH:mm:ss Z yyyy 问题描述 ...

  3. “msg“: “查询失败Text ‘2021-02-25T23:59:59‘ could not be parsed at index 10“

    参考到了一篇比较有用的 添加链接描述 json字符串转换成locadatetime出了问题,

  4. Java时间工具类(把日期时间转换成xx秒前、xx分钟前、xx小时前...)

    Java时间工具类(把日期时间转换成xx秒前.xx分钟前.xx小时前...) package com.liuzy.javaopen.entity; import java.text.ParseExce ...

  5. Java编译报错:无法将类XX中的构造器XX应用到给定类型

    1.idea新版本搜不到lombok插件? 报错如图: 实体类: 编译的时候报错... 下载的最新版本idea,2021.1.1 不对啊,老版本都没问题的 突然想到虽然有lombok的依赖包,但是插件 ...

  6. Access to XMLHttpRequest at ‘http://xx‘ from origin ‘http://xx‘ has been blocked by CORS policy:

    Access to XMLHttpRequest at 'http://xx' from origin 'http://xx' has been blocked by CORS policy: 问题解 ...

  7. java.net.UnknownHostException: unknown host:xxxx异常解决办法

    java.net.UnknownHostException: unknown host:xxxx异常解决办法 参考文章: (1)java.net.UnknownHostException: unkno ...

  8. 【Flink】TaskSubmissionException: No task slot allocated for job ID xx and allocation ID xx.

    文章目录 1.概述 1.概述 flink任务提交报错 TaskSubmissionException: No task slot allocated for job ID xx and allocat ...

  9. bash xx.sh与sh xx.sh以及./xx.sh的区别

    在ubuntu中,sh只是bash的一个链接,执行的程序都是一样的,命令解释器是一样的.但bash xx.sh和./xx.sh和sh xx.sh还是有不同的,bash xx.sh和sh xxx.sh都 ...

  10. 解决SVN pristine text xxxx not present问题

    解决SVN pristine text xxxx not present问题 偶尔出现 经常出现且报错中的xxxx部分相同(亲测有效) 偶尔出现 1.使用SQLiteSpy.exe打开.svn/wc. ...

最新文章

  1. 蓝桥杯国赛-估计人数
  2. Tableau实战系列Tableau基础概念全解析 (三)-维度和度量
  3. 七大排序算法的个人总结(一)
  4. Crystal Reports basic for Visual Studio 2008部署
  5. 如何打造高效的多任务、高并发的网络服务器系统?
  6. TI-RTOS实时操作系统开发之功耗测试
  7. 基于JAVA+Servlet+JSP+MYSQL的教室资源管理系统
  8. C# 导入excel数据,解决关闭excel后不能释放资源的问题
  9. JavaScript(五):变量的作用域
  10. vue项目中使用axios发送请求
  11. 超全的JS重新加载当前页面的几种方式
  12. 致远V8.1 协同 最新版
  13. 掌握技巧可以快速完成网站备案
  14. 六.全文检索ElasticSearch经典入门-高亮
  15. 单位根检验urdf_怎样分析单位根检验结果
  16. python画反比例函数_拟合一个反比例函数
  17. (读书笔记)蔡康永的说话之道
  18. MODTRAN辐射传输模型使用笔记
  19. List remove的三种正确方法
  20. c语言编程a4988驱动步进电机,A4988 步进电机驱动模块测试

热门文章

  1. 外贸邮箱企业邮箱,免费外贸企业邮箱大全,外贸企业邮箱都有哪些?
  2. 朋友,我真诚的劝你别网贷
  3. 哒螨灵使用注意事项_常用杀虫剂-哒螨灵使用方法
  4. HYPERLEDGER FABRIC网络搭建之network e2ecli_default not found
  5. 如何配置CK-S610-A01半导体读写器的RFID工具擦写TI低频玻璃管标签RI-TRP-DR2B-40的UID号
  6. BOC保护的色氨酸锌卟啉(Zn·TAPP-Trp-BOC)/铜卟啉(Cu·TAPP-Trp-BOC)/钴卟啉(钴·TAPP-Trp-BOC)/铁卟啉(Fe·TAPP-Trp-BOC)/齐岳供应
  7. 要怎样努力,才能成为很厉害的人?!
  8. 牛客多校第九场K-The Flee Plan of Groundhog(树形DP)
  9. 图解 魔方快速还原 7步法
  10. oracle自动清理归档,Oracle rman 自动清理归档日志