java 获取url参数_Java截取url参数的方法

废话少说,直奔关键代码。

具体代码如下所示:

/**

* 去掉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

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 urlSplit(String URL){

Map mapRequest = new HashMap();

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 urlSplit(String data){

StringBuffer strbuf = new StringBuffer();

StringBuffer strbuf2 = new StringBuffer();

Map map = new HashMap();

for(int i =0;i

if(data.substring(i,i+1).equals("=")){

for(int n=i+1;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值的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java截取URL参数可以使用以下方法: 1. 使用java.net.URL类来解析URLURL类提供了一些方法,例如getQuery()可以获取URL中的查询参数部分。通过这个方法可以得到一个字符串,包含了所有的参数和值。 2. 使用java.net.URI类来解析URL。 URI类提供了getQuery()方法,可以获取URL中的查询参数部分。与URL类相似,通过该方法可以获得参数和值的字符串。 3. 手动解析URL。我们可以使用String类的indexOf()和substring()方法来找到参数的位置,并从URL截取参数和值。 以下是一个示例代码,演示了如何使用URL类和手动解析方法截取URL参数: ```java import java.net.URL; import java.util.HashMap; import java.util.Map; public class URLParameterExtractor { public static void main(String[] args) { String urlString = "http://example.com?param1=value1&param2=value2"; // 使用URL类解析URL try { URL url = new URL(urlString); String query = url.getQuery(); Map<String, String> parameters = getParametersFromString(query); System.out.println(parameters); } catch (Exception e) { e.printStackTrace(); } // 使用手动解析方法 String query = urlString.substring(urlString.indexOf("?") + 1); Map<String, String> parameters = getParametersFromString(query); System.out.println(parameters); } private static Map<String, String> getParametersFromString(String query) { Map<String, String> parameters = new HashMap<>(); String[] pairs = query.split("&"); for (String pair : pairs) { String[] keyValue = pair.split("="); if (keyValue.length == 2) { String key = keyValue[0]; String value = keyValue[1]; parameters.put(key, value); } } return parameters; } } ``` 运行结果将输出: ``` {param1=value1, param2=value2} {param1=value1, param2=value2} ``` 这个示例代码演示了两种截取URL参数方法,分别使用了URL类和手动解析的方式来获取参数和值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值