1

"id=1&location=india"javaを使用してクエリ文字列を{"id":"1","location":"india"}json形式に変換したい。

私は春のバージョン 4.0.3 を使用しています。

4

3 に答える 3

0

これは直接的な方法ではありませんが、最初に頭に浮かんだ方法です。HttpUtils を使用して queryString を Hashtable に変換し、JSON にマーシャリングします。

https://tomcat.apache.org/tomcat-7.0-doc/servletapi/javax/servlet/http/HttpUtils.html

更新: HttpUtils は Hashtable を生成します。

于 2015-05-06T05:42:08.353 に答える
0

このようなコンバーターを書くことができると思います

public class ConvertToJson {
    public static void main(String[] args) {
        String a = "id=1&location=india";
        System.out.println(convert(a));
    }

    private static String convert(String a) {
        String res = "{\"";

        for (int i = 0; i < a.length(); i++) {
            if (a.charAt(i) == '=') {
                res += "\"" + ":" + "\"";
            } else if (a.charAt(i) == '&') {
                res += "\"" + "," + "\"";
            } else {
                res += a.charAt(i);
            }
        }
        res += "\"" + "}";
        return res;
    }
}

それはあなたのために仕事をすることができます

于 2015-05-06T05:50:50.397 に答える
0

これを試して..

 try
    {
        String query="id=1&location=india";
        String queryArray[]=query.split("&");
        String id[]=queryArray[0].split("=");
        String location[]=queryArray[1].split("=");

        JSONObject jsonObject=new JSONObject();
        jsonObject.put(id[0],id[1]);
        jsonObject.put(location[0],location[1]);

        Log.i("Stackoverflow",jsonObject.toString());
    }
    catch (JSONException e)
    {
        e.printStackTrace();
        Log.i("Stackoverflow",e.getMessage());
    }
于 2015-05-06T06:00:58.657 に答える