JAVA Json对象使用“ =”代替“:”

时间:2018-07-11 11:10:42

标签: java json

我在Java中有一个字符串,该字符串具有JSON结构,但是我的字符串不是使用“:”,而是使用“ =”。例如,我有这个字符串:

[{
    index1 = val1,
    index2 = val2,
    index3 = val3&val4=inside_value
}]

而不是这样:

[{
    index1 : val1,
    index2 : val2,
    index3 : val3&val4=inside_value
}]

现在,我可以使用一些可以构建的服装解析器,但是我想已经有一些有用的解析器了。 有什么想法吗?

1 个答案:

答案 0 :(得分:0)

如果字符串结构是永久性的,则可以进行自定义解析

String convertToJson="[{"
                    +"index1 = val1,"
                    +"index2 = val2,"
                    +"index3 = val3&val4=inside_value"
                +"}]";
          String[] split1=  convertToJson.split(",");
          HashMap<String, String> map=new HashMap<>();
          for(String row:split1){
              row =row.toLowerCase().replaceAll("[\\[\\]\\{\\}]", "");
              String key=row.split("=",2)[0];
              String value=row.split("=",2)[1];
              map.put(key, value);
          }
          System.out.println("map :: "+map.toString());
          JSONObject json = new JSONObject();
          json.putAll( map );
          System.out.printf( "JSON:", json.toString() );

可以通过删除不需要的字符从字符串中创建哈希图,并最终从哈希图中创建JSONObject