zoukankan      html  css  js  c++  java
  • json中含有换行符' ',' '的处理

    一、josn简易说明

       json是一种轻量级的数据交换格式,是一系列格式字符串。在数据交换中,经常会使用到,具有易读性,轻量级。很多地方会使用到,用处广泛。如下:(截取的一段json体)

    "matchrule": {
            "tag_id": "2", 
            "sex": "1", 
            "country": "中国", 
            "province": "广东", 
            "city": "广州", 
            "client_platform_type": "2", 
            "language": "zh_CN"
        }

      想对json格式有更多了解,查阅相关文档。

    二、josn中传递' ',' '出现问题

      在传递' ',' '的json的字符串时,遇到了josn格式出错。如下:

      在网络中抓取传输的json体,通过格式化校验时报错。认为"RelNotes"的内容是不完整的。没有找到引号的另一半["]导致解析失败。实际上是因为在箭头处遇到了换行符导致解析json失败。

    因此,我想在"RelNotes"中传递换行符,但不能导致接收端解析失败。这个怎么处理???

    三、josn中处理带' ',' '换行符

      很明显' ',' '是特殊含义的字符,需要进行转义,需要在该字符前加上转义符号‘’。在实际中,我也是这么处理的。问题很快解决掉。

    如下是我的处理方式:(这里有隐藏bug)

      找到" ",替换"\r\n",这边测试功能是可以的。但是隐藏了一个bug。

    四、修改隐藏bug

      正常在我们测试是ok的,有同事出差到外地,发现这个功能还是有问题。抓包查看这里面还存在换行符。??? 想这怎么回事,明明处理过的,把" ",替换成"\r\n"就可以了。???赶紧百度搜下,哈哈。。。,终于知道了。原来换行符有问题。

      如下给出的说明:

      最终修改方式:

        找到" ",替换成"\r"," ",替换成"\n"。测试问题解决!!!

        由于那边电脑很有可能使用的是MAC,换行是" ",导致json解析失败。

    五、问题总结

      刚才开始解决换行时,没考虑这么多。就是" ",替换成"\r\n"就可以了,当时测试也是没问题。特殊bug在,特殊情形下出现时,后来解决时才发现,哦,问题原来是这样啊!也算加深了知识点。

    阅读原文

  • 相关阅读:
    HDU-1215 七夕节 数论 唯一分解定理 求约数之和
    LightOJ-1259 Goldbach`s Conjecture 数论 素数筛
    [前端-动态数据可视化]横向柱状图的动态数据可视化
    CodeForces-722C Destroying Array 并查集 离线操作
    CodeForces-920E Connected Components? 广度搜索 双向链表 判断联通 大量重复节点的删除
    CodeForces-1007A Reorder the Array 贪心 田忌赛马
    POJ-3692 Kindergarten 二分图 最大团
    个人开发者做一款Android App需要知道的事情
    android各种组件的监听器
    留言处插入xss不弹框
  • 原文地址:https://www.cnblogs.com/chuanfengzhang/p/12189176.html
Copyright © 2011-2022 走看看