public Map<String, String> getUrlParams(final String url) throws UnsupportedEncodingException {
        final Map<String, String> params = new HashMap<>();
        final String decoded = URLDecoder.decode(url, "UTF-8");
        final StringTokenizer tk = new StringTokenizer(decoded, "?&");
        while (tk.hasMoreTokens()) {
            final String t = tk.nextToken();
            final StringTokenizer tk2 = new StringTokenizer(t, "=");
            if (tk2.hasMoreTokens()) {
                final String key = tk2.nextToken();
                if (tk2.hasMoreTokens()) {
                    final String value = tk2.nextToken();
                    params.put(key, value);
                }
            }
        }
        return params;
    }
read a url like parameter list linked with '&'

@param url  parameter list
@return     a hashmap of the parameter
@throws     UnsupportedEncodingException
main/src/main/java/cgeo/geocaching/brouter/core/RoutingParamCollector.java