How to extract parameters from a given url

后端 未结 7 578
佛祖请我去吃肉
佛祖请我去吃肉 2020-11-27 05:10

In Java I have:

String params = \"depCity=PAR&roomType=D&depCity=NYC\";

I want to get values of depCity parameters (PA

7条回答
  •  栀梦
    栀梦 (楼主)
    2020-11-27 06:02

    same but with jsonobject:

    public static JSONObject getQueryParams2(String url) {
        JSONObject json = new JSONObject();
        try {
            String[] urlParts = url.split("\\?");
            JSONArray array = new  JSONArray();
            if (urlParts.length > 1) {
                String query = urlParts[1];
                for (String param : query.split("&")) {
                    String[] pair = param.split("=");
                    String key = URLDecoder.decode(pair[0], "UTF-8");
                    String value = "";
                    if (pair.length > 1) {
                        value = URLDecoder.decode(pair[1], "UTF-8");
                        if(json.has(key)) {
                            array = json.getJSONArray(key);
                            array.put(value);
                            json.put(key, array);
                            array = new JSONArray();
                        } else {
                            array.put(value);
                            json.put(key, array);
                            array = new JSONArray();
                        }
                    }
                }
            }
            return json;
        } catch (Exception ex) {
            throw new AssertionError(ex);
        }
    }
    

提交回复
热议问题