zoukankan      html  css  js  c++  java
  • Java 处理json字符串value中多余的双引号

    一、错误场景

      json字符串的value值中有多余的双引号

    1、直接上错误的json字符串

    String errorJsonStr =  "{"userName":"瑞文"绿色","hero":"f放逐之刃" 盘子"}";
    

    二、处理方案

    1、第一种 :

    1、 将 {" 替换为 {%         // % 也可以是其他字符,自己认识就好,但是要注意要处理的字符串中不包含你要换成的这个特殊字符
        将  ":"  替换为 %:% 
        将  ”,   替换为 %2、 将多余的 双引号替换为空字符串

    2、第二种(推荐使用此方法):

    自己写个方法将value值中多余的双引号替换为 中文双引号,直接上代码:

    public class MainTest {
    
        public static void main(String[] test) {
            String errorJsonStr =  "{"userName":"瑞文"绿色","hero":"f放逐之刃" 盘子"}";
            errorJsonStr = toJsonString(errorJsonStr);
            System.out.println(errorJsonStr);
        }
    
        // 处理json字符串中value多余的双引号, 将多余的双引号替换为中文双引号
        private static String toJsonString(String s) {
            char[] tempArr = s.toCharArray();
            int tempLength = tempArr.length;
            for (int i = 0; i < tempLength; i++) {
                if (tempArr[i] == ':' && tempArr[i + 1] == '"') {
                    for (int j = i + 2; j < tempLength; j++) {
                        if (tempArr[j] == '"') {
                            if (tempArr[j + 1] != ',' && tempArr[j + 1] != '}') {
                                tempArr[j] = '”'; // 将value中的 双引号替换为中文双引号
                            } else if (tempArr[j + 1] == ',' || tempArr[j + 1] == '}') {
                                break;
                            }
                        }
                    }
                }
            }
            return new String(tempArr);
        }
    
    }

    作者:橡胶果实 —— 要成为海贼王的少年

    出处:https://www.cnblogs.com/topfish/

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    docker安装
    win8换win7的操作方法
    java数组实现队列
    springMVC源码学习之获取参数名
    SpringMVC源码学习之request处理流程
    LeetCode 231. Power of Two
    LeetCode 202. Happy Number
    LeetCode 171. Excel Sheet Column Number
    Eclipse 保存代码时,不自动换行设置
    LeetCode 141. Linked List Cycle
  • 原文地址:https://www.cnblogs.com/topfish/p/11387193.html
Copyright © 2011-2022 走看看