如何解析这个queryString,它是JSON响应的结果

时间:2013-05-14 12:51:07

标签: java json query-string

我已经解析了一个JSON响应并获得了以下字符串:

String queryString = "AQB=1&v1=somev1data&v25=somev25data&URL=http://www.someurl.com/configure/getvalues/request1=req1Passed&data2=somedataPassed&ce=UTF-8&ARB=1";

当我拆分上面的queryString时,输出应为:

AQB=1
v1=somev1data
v25=somev25data
URL=http://www.someurl.com/configure/getvalues/request1=req1Passed&data2=somedataPassed
ce=UTF-8
ARB=1

注意:
queryString始终更改,URL参数也始终更改。 AQB,v1 ..... v30,p1 .... p30,ce,pre,pe,URL,ARB都是预定义的变量名。

2 个答案:

答案 0 :(得分:1)

除非URL参数是正确的URL编码,否则不可能,因此“&”字符将被转义,以免被解释为字段分隔符。

字符串应按如下方式编码:

String queryString = "AQB=1&v1=somev1data&v25=somev25data&URL=http%3A%2F%2Fwww.someurl.com%2Fconfigure%2Fgetvalues%2Frequest1%3Dreq1Passed%26data2%3DsomedataPassed&ce=UTF-8&ARB=1";

由于在您的问题中格式化,因此无法连续解析字符串。

答案 1 :(得分:0)

StringTokenizer st = new StringTokenizer(queryString, "&");
while (st.hasMoreTokens()) {
  System.out.println(st.nextToken());
}

正如另一张海报所示,现在唯一剩下的就是照顾网址