java qlv转mp4 代码_Java实用工具类五:URL转码、解码类

package com.cn.hnust.util;

import java.io.UnsupportedEncodingException;

import java.util.HashMap;

import java.util.Map;

/**

* url转码、解码

*

* @author

* @date

*/

public class UrlUtil {

private final static String ENCODE = "GBK";

/**

* URL 解码

*

* @return String

* @author lifq

* @date 2015-3-17 下午04:09:51

*/

public static String getURLDecoderString(String str) {

String result = "";

if (null == str) {

return "";

}

try {

result = java.net.URLDecoder.decode(str, ENCODE);

} catch (UnsupportedEncodingException e) {

e.printStackTrace();

}

return result;

}

/**

* URL 转码

*

* @return String

* @author lifq

* @date 2015-3-17 下午04:10:28

*/

public static String getURLEncoderString(String str) {

String result = "";

if (null == str) {

return "";

}

try {

result = java.net.URLEncoder.encode(str, ENCODE);

} catch (UnsupportedEncodingException e) {

e.printStackTrace();

}

return result;

}

/**

* 正则替换

* @param url

* @param name

* @param value

* @return

*/

public static String replaceUrlParameterReg(String url, String name, String value) {

if (StringUtils.isNotBlank(url) && StringUtils.isNotBlank(value)) {

url = url.replaceAll("(" + name + "=[^&]*)", name + "=" + value);

}

return url;

}

/**

* 正则替换

* @param url

* @param name

* @param value

* @return

*/

public static String getUrlParameterReg(String url, String name) {

Map mapRequest = new HashMap();

String[] arrSplit=null;

String strUrlParam=TruncateUrlPage(url);

if(strUrlParam==null)

{

return "";

}

//每个键值为一组 www.2cto.com

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.get(name);

}

/**

* 去掉url中的路径,留下请求参数部分

* @param strURL url地址

* @return url请求参数部分

*/

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)

{

if(arrSplit[1]!=null)

{

strAllParam=arrSplit[1];

}

}

}

return strAllParam;

}

public static void main(String[] args) {

String str ="/activePage?wxto=0C29975119DE037B4F25CD119CF4CF11&activity2018topid=oz9Zj07Jg5O9IfAyVauT-GL-CSfM&activity2018topunid=o-NUA0l8fxm2_5fmK_ocpyxrP1dE&subscribe=0&timestamp=1516008942920&-NUA0l8fxm2_5fmK_ocpyxrP1dE&oaccesstoken=5_xJYY3gnUTD4pqJFc7_ltbvclb0ZRKOFBEc5BXAwi7vjZndRAN58AkPazqUJDGzBbrw-J1ag1PF0C-S39SqJflA&m=1&wxt=C9A58DA3804E46981BF4B78C8C862743&-NUA0oHjJjCcyGe-wJdEFYjwrfU&-NUA0oHjJjCcyGe-wJdEFYjwrfU&-NUA0oHjJjCcyGe-wJdEFYjwrfU";

String m = "9j70Dj%2BpVA64qK9%2FeOjsg2dP3biHh6imIC6WFXtIRcR6nHwDkjHPNOL9zUi7fmpcbgJP3u%2Bh3VUTfDO0B2fsbKWsizlqOKdXJovkg3HZMTxAIcByvYvtHoCyd9iOgUxoDqslzoMunvnEzPS8FbYc%2Fjkd4y47zhKk%2FUTE4GGm8ZM5Ns5eYwZSFL7A8pX0U%2BXfsMR%2FGf5z2pci6a5BJaki4e0z0Pmh5sPsjytmKdjdssHQ98iZ8ge3mXJm7G%2FaSJ3e%2FHvNENLv0JRJf7q1bFu180RZEtsMRs%2BWdesTuJamtJBYtLxQEYaCMygRcmd%2F1VdSqfLnuZqcZAzT6GAmvBwZyfzCK9LffGsyZGWce%2B0g2R%2FTCKTTtNpWWCJb0e7Gs0g82DmBNV4jh3hrOAmeLNwpu0M%2B049%2FHrDxAZPvXowCb5OLb7if%2BVqBpYkphGssurkqLV2KTXx3vhjl9vIiMQnD4397oNYf81P%2BBWFPBFhPQSfGaxZGZbAlPgkluR4%2Fj75f9SeZlcWFMnl%2BYKYtopw1gw%3D%3D";

System.out.println(getURLEncoderString(m));

System.out.println(getURLDecoderString(m));

//System.out.println( getUrlParameterReg(str,"wxto"));

}

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值