UrlUtil.java

package url;

import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.net.URLEncoder;

/**
 * URL解析轉義,反轉義
 * 
 *
 * @author ZengWenfeng
 * @email [email protected]
 */
public class UrlUtil
{
	/**
	 * 【棄用】
	 * 
	 * @author ZengWenfeng
	 * @email [email protected]
	 * @param url
	 * @return
	 */
	@SuppressWarnings("deprecation")
	public static String encode(String url)
	{
		return URLEncoder.encode(url);
	}

	public static String encode(String url, String enc)
	{
		try
		{
			return URLEncoder.encode(url, enc);//UnsupportedEncodingException
		}
		catch (UnsupportedEncodingException e)
		{
			e.printStackTrace();
			return null;
		}
	}

	public static String encodeByUTF8(String url)
	{
		try
		{
			return URLEncoder.encode(url, "UTF-8");
		}
		catch (UnsupportedEncodingException e)
		{
			e.printStackTrace();
			return null;
		}
	}

	/**
	 * 【棄用】
	 * 
	 * @author ZengWenfeng
	 * @email [email protected]
	 * @param url
	 * @return
	 */
	@SuppressWarnings("deprecation")
	public static String decode(String urlEncode)
	{
		return URLDecoder.decode(urlEncode);
	}

	public static String decode(String urlEncode, String enc)
	{
		try
		{
			return URLDecoder.decode(urlEncode, enc);
		}
		catch (UnsupportedEncodingException e)
		{
			e.printStackTrace();
			return null;
		}
	}

	public static String decodeByUTF8(String urlEncode)
	{
		try
		{
			return URLDecoder.decode(urlEncode, "UTF-8");
		}
		catch (UnsupportedEncodingException e)
		{
			e.printStackTrace();
			return null;
		}
	}

	/**
	 * 
	 * @author ZengWenfeng
	 * @email [email protected]
	 * @param args
	 */
	public static void main(String[] args)
	{
		String url = "http://127.0.0.1:8080/zengwenfeng/get?code=1&name=2";
		String strEncode = encode(url);
		System.out.println(strEncode);
		String str = decode(strEncode);
		System.out.println(str);

		String url1 = "http://127.0.0.1:8080/zengwenfeng/get?code=1&name=2";
		String strEncode1 = encodeByUTF8(url1);
		System.out.println(strEncode1);
		String str1 = decodeByUTF8(strEncode1);
		System.out.println(str1);

		/*
		http%3A%2F%2F127.0.0.1%3A8080%2Fzengwenfeng%2Fget%3Fcode%3D1%26name%3D2
		http://127.0.0.1:8080/zengwenfeng/get?code=1&name=2
		*/
	}
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章