/**
* Created by myc on 2015/12/9.
*/
import android.text.TextUtils;
import java.util.HashMap;
import java.util.Map;
public class URLUtil {
/**
* 去掉url中的路径,留下请求参数部分
* @param strURL url地址
* @return url请求参数部分
*/
private static String truncateUrlPage(String strURL)
{
if(TextUtils.isEmpty(strURL)){
return null;
}
String strAllParam=null;
strURL=strURL.trim().toLowerCase();
String[] arrSplit = strURL.split("[?]");
//有参数
if(arrSplit.length>1)
{
if(arrSplit[1]!=null)
{
strAllParam=arrSplit[1];
}
}
return strAllParam;
}
/**
* 解析出url参数中的键值对
* @param URL url地址
* @return url请求参数部分
*/
public static Map<String, String> getRequestParamMap(String URL)
{
if(TextUtils.isEmpty(URL)){
return null;
}
String strUrlParam=truncateUrlPage(URL);//得到参数
if(TextUtils.isEmpty(strUrlParam))
{
return null;
}
Map<String, String> mapRequest = new HashMap<String, String>();
//每个键值为一组
String[] arrSplit=strUrlParam.split("[&]");
for(String strSplit:arrSplit)
{
String[] arrSplitEqual= strSplit.split("[=]");
//解析出键值
if(arrSplitEqual.length>1)
{
if(!TextUtils.isEmpty(arrSplitEqual[1]))
{
mapRequest.put(arrSplitEqual[0], arrSplitEqual[1]);//正确解析
}else{
mapRequest.put(arrSplitEqual[0], "");//无value
}
}
}
return mapRequest;
}
}