情况

跟后台交互的时候,发现传过去的数据中有个 \u003d
这是我传的参数 :
query=[{property:"chengShi.id",operator:"=",value:1}]
这是后台接收到的参数:
query=[{"property":"chengShi.id","value":1,"operator":"\u003d"}]
很明显,是 = 出错了,因为要传的是对象,我把它封装在Map中了,再用Gson转换,这是我的代码:

Map query = new HashMap();query.put("property", "shangPinDM");query.put("operator", "=");query.put("value", id);
OkHttpGo.<String>post(API.CHECK_PRODUCT).params("query", "[" + MyJson.toJson(query) + "]").execute(new DialogCallback<String>(this).......

注意这段代码 MyJson.toJson(query),MyJson中封装的是Gson。所以问题就出在Gson转换过程中。

原因

Gson默认是进行HTML ESCAPE,也就是转码, 比如我们 \t 表示换行符。因此对象中有=时,Gson就会把=转码,而 = 转码就是 \u003d 。如下图,使用站长之家的在线转换工具可以看到 = 转成Unicode编码之后就是 \u003d

解决

既然Gson默认会进行HTML ESCAPE(转码),我们设置不让Gson转码就可以了,具体代码如下:

  // 创建一个不进行HtmlEscaping的Gson对象Gson gson = new GsonBuilder().disableHtmlEscaping().create();String json = gson.toJson(query);

【Java 】\u003d乱码相关推荐

  1. java菱形乱码 编码_JAVA:编码与乱码问题

    一.为什么要编码? 由于人类的语言太多,因而表示这些语言的符号太多,无法用计算机的一个基本的存储单元----byte来表示,因而必须要经过拆分或一些翻译工作,才能让计算机能理解. byte一个字节即8 ...

  2. java中文乱码解决之道(二)—–字符编码详解:基础知识 + ASCII + GB**

    原文出处:http://cmsblogs.com/?p=1412 在上篇博文(java中文乱码解决之道(一)-–认识字符集)中,LZ简单介绍了主流的字符编码,对各种编码都是点到为止,以下LZ将详细阐述 ...

  3. cmd运行Java中文乱码,无法加载主类Error: Could not find or load main class

    网上说了好多方法,只说我用了的 cmd运行Java中文乱码 设置环境变量--系统环境变量 添加条目:JAVA_TOOL_OPTIONS 值:-Dfile.encoding=UTF-8 -Duser.l ...

  4. J2EE (六) 详解 java 中文乱码

    简介 在Java项目的开发过程中,经常会出现中文乱码的情况,这也是一直是困扰大家的一个问题,很多的程序员都会经常遇到这个问题. 有时捣鼓调试半天也摸不着头绪,不知道究竟哪里出了问题,那是你还不清楚出现 ...

  5. 分析java中文乱码的原因

    在java开发中都能遇到java中文乱码的情况,怎样才能够恰当地选择汉字编码方式并正确地处理汉字的编码呢?希望通过下面的总结的java中文乱码解决方法对遇到过此类问题的朋友有所帮助. 首先,要想解决j ...

  6. java文件下载至linux乱码,JAVA 文件下载乱码问题解决办法

    页面设置隐藏的iframe 页面下载按钮 id="btnDown" href="javascript:void(download('btnDown'))" &g ...

  7. java 中文乱码过滤器_JAVA中文乱码过滤器(用java过滤器解决中文乱码)V0422 整理版...

    JAVA中文乱码过滤器(用java过滤器解决中文乱码)V0422 整理版 不用再担心java中文乱码问题,一步到位,一次性解决.更方便更快捷. web-xml配置 EncodingFilter com ...

  8. java 中文编码乱码_Java编码问题复习

    java 中文编码乱码 我最近购买了Anghel Leonard的Java Coding Problems,因为本书中涉及的主题使我成为一名Java培训师很感兴趣. 在这里看到目录后,我决定购买它. ...

  9. [转]java中文乱码解决之道(三)-----编码详情:伟大的创想---Unicode编码

    http://www.cnblogs.com/chenssy/ java中文乱码解决之道(三)-----编码详情:伟大的创想---Unicode编码 随着计算机的发展.普及,世界各国为了适应本国的语言 ...

  10. Java中文乱码特殊字符解决方案

    Java中文乱码&特殊字符解决方案 相信很多朋友遇到过Java的乱码问题,最近我也在解决一个"使用文本生成图片过程中中文以及特殊字符乱码"的问题:花了我大量时间,Debug ...

最新文章

  1. Java compiler level does not match解决方法
  2. mysql5.7只安装服务端_Windows Mysql5.7.11 服务端安装详解
  3. allure 测试报告本地打开_Allure--自动化测试报告生成
  4. Linux下将文件打包、压缩并分割成指定大小
  5. 本篇文档介绍如何手动在ECS实例上部署Java web项目
  6. Kettle使用_4 Excel批量数据输入
  7. STL中list用法详解
  8. 待人真诚p2psearcher2013源码下载
  9. SMB协议端口号,Windows文件共享协议
  10. Mac 版 QQ 音乐上线离线提示音的方法?
  11. 用PBKDF2 或BCrypt 来存储密码
  12. 18.3 通过打印来调试
  13. 错误: 程序包org.eclipse.swt.graphics不存在/swt.jar下载方法
  14. linux逻辑卷缩减命令,linux命令:resize2fs、lvm逻辑卷lv扩展及缩减
  15. oracle数据库左边栏不见,Oracle数据库中分区表的操作方法
  16. 微积分入门(持续更新)
  17. 正则表达式regex(入门使用)
  18. JAVA方式对接FIL节点钱包(也有离线)
  19. 锐捷路由器如何配置虚拟服务器,[路由器自动配置方法技巧] 锐捷路由器配置方法...
  20. 南卫理公会大学计算机科学,南卫理公会大学计算机科学与工程硕士

热门文章

  1. 二 八 十 十六 进制之间快速转换
  2. matlab自动生成报告,一种基于MATLAB的Word报告自动生成方法
  3. MongoDB 默认端口
  4. 机械中级工程师计算机和英语翻译,哪位英语牛人给翻译下机械英语 谢谢
  5. 深度相机(一)--TOF总结
  6. 警惕职场的竞业协议坑
  7. 这是一篇java3y的优选文章总结
  8. 情绪管理---学会控制情绪
  9. 题目十二:脉冲按键电话按键显示电路设计(平台实现)
  10. 多头、多头市场,空头、空头市场......