Java截取url参数的方法
程序员文章站
2024-03-13 11:18:18
废话少说,直奔关键代码。
具体代码如下所示:
/**
* 去掉url中的路径,留下请求参数部分
* @param strurl url地址
* @re...
废话少说,直奔关键代码。
具体代码如下所示:
/** * 去掉url中的路径,留下请求参数部分 * @param strurl url地址 * @return url请求参数部分 * @author lzf */ private static string truncateurlpage(string strurl){ string strallparam=null; string[] arrsplit=null; strurl=strurl.trim().tolowercase(); arrsplit=strurl.split("[?]"); if(strurl.length()>1){ if(arrsplit.length>1){ for (int i=1;i<arrsplit.length;i++){ strallparam = arrsplit[i]; } } } return strallparam; } /** * 解析出url参数中的键值对 * 如 "index.jsp?action=del&id=123",解析出action:del,id:123存入map中 * @param url url地址 * @return url请求参数部分 * @author lzf */ public static map<string, string> urlsplit(string url){ map<string, string> maprequest = new hashmap<string, string>(); string[] arrsplit=null; string strurlparam=truncateurlpage(url); if(strurlparam==null){ return maprequest; } arrsplit=strurlparam.split("[&]"); for(string strsplit:arrsplit){ string[] arrsplitequal=null; arrsplitequal= strsplit.split("[=]"); //解析出键值 if(arrsplitequal.length>1){ //正确解析 maprequest.put(arrsplitequal[0], arrsplitequal[1]); }else{ if(arrsplitequal[0]!=""){ //只有参数没有值,不加入 maprequest.put(arrsplitequal[0], ""); } } } return maprequest; }
ps:java截取url中的值
map<string, object> urlsplit(string data){ stringbuffer strbuf = new stringbuffer(); stringbuffer strbuf2 = new stringbuffer(); map<string ,object> map = new hashmap<string,object>(); for(int i =0;i<data.length();i++){ if(data.substring(i,i+1).equals("=")){ for(int n=i+1;n<data.length();n++){ if(data.substring(n,n+1).equals("&")|| n ==data.length()-1){ map.put(strbuf.tostring(), strbuf2); strbuf =new stringbuffer(""); strbuf2 =new stringbuffer(""); i=n; break; } strbuf2.append(data.substring(n,n+1)); } continue; } strbuf.append(data.substring(i,i+1)); } return map; }
以上所述是小编给大家介绍的java截取url参数的方法及java截取url值的方法,希望对大家有所帮助