求一个工具类,解析url字符串里的参数 我有一个字符串类似url的参数a=1&b=2&c=3&d=4有没有工具类解析这样的字符串,直接取a或者b的值比如xxUtil.get("a"),就得到了1 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 String queryString = "a=1&b=2&c=3&d=4"; String[] queryStringSplit = queryString.split("&"); Map<String,String> queryStringMap = new HashMap<String,String>(queryStringSplit.length); String[] queryStringParam; for (String qs : queryStringSplit) { queryStringParam = qs.split("="); queryStringMap.put(queryStringParam[0], queryStringParam[1]); } System.out.println(queryStringMap); import java.util.HashMap;import java.util.Map;/** * 类说明:URL参数解析 * * @author 作者: LiuJunGuang * @version 创建时间:2011-4-14 上午12:36:51 */public class URLAnalysis { private Map<String, String> paramMap = new HashMap<String, String>(); public void analysis(String url) { paramMap.clear(); if (!"".equals(url)) {// 如果URL不是空字符串 url = url.substring(url.indexOf('?') + 1); String paramaters[] = url.split("&"); for (String param : paramaters) { String values[] = param.split("="); paramMap.put(values[0], values[1]); } } } public String getParam(String name) { return paramMap.get(name); } public static void main(String[] args) { String test = "http://xxx.com?name=helddlo&id=100"; URLAnalysis urlAnalysis = new URLAnalysis(); urlAnalysis.analysis(test); System.out.println("name = " + urlAnalysis.getParam("name")); System.out.println("id = " + urlAnalysis.getParam("id")); }} import java.util.*;public class Test2 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner scan = new Scanner(System.in); String queryString = "a=1&b=2&c=3&d=4"; String[] queryStringSplit = queryString.split("&"); Map<String, String> queryStringMap = new HashMap<String, String>( queryStringSplit.length); String[] queryStringParam; for (String qs : queryStringSplit) { queryStringParam = qs.split("="); queryStringMap.put(queryStringParam[0], queryStringParam[1]); } System.out.print("请输入你要查询的字符串:"); String s = scan.nextLine(); System.out.println("你得到的对应值为:"); getValue(queryStringMap, s); } public static void getValue(Map<String, String> m, String input) { Set<String> keySet = m.keySet(); for (String s : keySet) { if (s.equals(input)) { System.out.println(m.get(s)); } } }}这是我参考一楼的代码修改了一下,你看看行不?? java程序运行时,出现的警告消息,求原因 hibernate中hql怎么查询到最后一条记录 JAVA线程的重要性? 命令行启动tomcat的问题 有谁尝试过使用jmf播放rm格式文件成功? 求助:关于package的问题? java里的时间函数在哪里,怎么用?? 简单题目(我不会啊!急!!!!) 简单问题,请给我一个解释。立即给分。 Better way to get columns info in a table? applet 中播放音乐时出现问题 菜鸟问问
String queryString = "a=1&b=2&c=3&d=4";
String[] queryStringSplit = queryString.split("&");
Map<String,String> queryStringMap =
new HashMap<String,String>(queryStringSplit.length);
String[] queryStringParam;
for (String qs : queryStringSplit) {
queryStringParam = qs.split("=");
queryStringMap.put(queryStringParam[0], queryStringParam[1]);
} System.out.println(queryStringMap);
import java.util.HashMap;
import java.util.Map;/**
* 类说明:URL参数解析
*
* @author 作者: LiuJunGuang
* @version 创建时间:2011-4-14 上午12:36:51
*/
public class URLAnalysis {
private Map<String, String> paramMap = new HashMap<String, String>(); public void analysis(String url) {
paramMap.clear();
if (!"".equals(url)) {// 如果URL不是空字符串
url = url.substring(url.indexOf('?') + 1);
String paramaters[] = url.split("&");
for (String param : paramaters) {
String values[] = param.split("=");
paramMap.put(values[0], values[1]);
}
}
} public String getParam(String name) {
return paramMap.get(name);
} public static void main(String[] args) {
String test = "http://xxx.com?name=helddlo&id=100";
URLAnalysis urlAnalysis = new URLAnalysis();
urlAnalysis.analysis(test);
System.out.println("name = " + urlAnalysis.getParam("name"));
System.out.println("id = " + urlAnalysis.getParam("id"));
}
}
* @param args
*/ public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner scan = new Scanner(System.in);
String queryString = "a=1&b=2&c=3&d=4";
String[] queryStringSplit = queryString.split("&");
Map<String, String> queryStringMap = new HashMap<String, String>(
queryStringSplit.length);
String[] queryStringParam;
for (String qs : queryStringSplit) {
queryStringParam = qs.split("=");
queryStringMap.put(queryStringParam[0], queryStringParam[1]);
}
System.out.print("请输入你要查询的字符串:");
String s = scan.nextLine();
System.out.println("你得到的对应值为:");
getValue(queryStringMap, s); } public static void getValue(Map<String, String> m, String input) {
Set<String> keySet = m.keySet();
for (String s : keySet) {
if (s.equals(input)) {
System.out.println(m.get(s));
}
} }}
这是我参考一楼的代码修改了一下,你看看行不??