java解析url
将形如
String url = "rtmp://192.168.31.250/live?token=D1F9275B94384950A220039F1A7C8BD5&type=3";
解析为map
{baseUrl=rtmp://192.168.31.250/live,
param={type=3,
token=D1F9275B94384950A220039F1A7C8BD5}}
直接上代码
package com.tel.common.utils;
import java.util.HashMap;
import java.util.Map;
public class UrlUtil {
/**
* 解析url
*
* @param url
* @return
*/
public static Map parse(String url) {
Map map = new HashMap();
if (url == null) {
return map;
}
url = url.trim();
if (url.equals("")) {
return map;
}
String[] urlParts = url.split("\\?");
map.put("baseUrl",urlParts[0]);
//没有参数
if (urlParts.length == 1) {
return map;
}
//有参数
String[] params = urlParts[1].split("&");
Map paramMap = new HashMap<>();
for (String param : params) {
String[] keyValue = param.split("=");
paramMap.put(keyValue[0], keyValue[1]);
map.put("param",paramMap);
}
return map;
}
}