URLEncoder 与 URLDecoder 简单解码编码
URL请求通常使用的解码、编码。
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.net.URLEncoder;
import java.util.HashMap;
import java.util.Map;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
/**
* @Description: 描述
* @date 2016年3月1日 下午2:15:40
*/
public class UrlCodeTest {
public static void main(String[] args) {
//编写代码1-----------------map转json,再编码,解码
//System.out.println(MapStringTest());
//System.out.println(JSON.toJSONString(MapStringTest()));
//MapToJson4Url();
//编写代码2-----------------直接json,再编码,解码
System.out.println(JsonStringTest());
System.out.println(URLDncoderTest(URLEncoderTest(JsonStringTest())));
}
/**
* @Description map转json,再编码,解码
* @author zhitao.li
* @date 2016年3月1日 下午3:15:26
*/
private static void MapToJson4Url() {
try {
System.out.println(URLEncoder.encode(JSON.toJSONString(MapStringTest()), "UTF-8"));
System.out.println(URLDecoder.decode(URLEncoder.encode(JSON.toJSONString(MapStringTest()), "UTF-8"), "UTF-8"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
/**
* @Description 解码
* @author zhitao.li
* @date 2016年3月1日 下午2:35:21
* @param input
* @return
*/
private static String URLDncoderTest(String input){
System.out.println("input="+input);
String URlrequest = "http://www.myway.com/cgi-bin/" + "query?pg=q&kl=baidu&stype=stext&data="+input;
System.out.println("URlrequest="+URlrequest);
try {
return URLDecoder.decode(URlrequest, "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return null;
}
/**
* @Description 编码
* @author zhitao.li
* @date 2016年3月1日 下午2:32:03
* @param data
* @return
*/
private static String URLEncoderTest(String data) {
try {
return URLEncoder.encode(data, "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return null;
}
/**
* @Description MAP数据格式
* @author zhitao.li
* @date 2016年3月1日 下午3:04:17
* @return
*/
private static HashMap<String,Object> MapStringTest(){
HashMap<String,Object> data = new HashMap<String,Object>();
data.put("name","zhangsan");
data.put("age", 11);
data.put("class", "11班");
return data;
}
/**
* @Description JSON数据格式
* @author zhitao.li
* @date 2016年3月1日 下午2:43:26
* @return
*/
private static String JsonStringTest() {
JSONObject jsonObj = new JSONObject();
jsonObj.put("name", "11111");
jsonObj.put("sex", "11111");
jsonObj.put("class", "11111");
//家庭信息
Map<String, String> FamilyInfoMap = new HashMap<String, String>();
FamilyInfoMap.put("Father", "Mr.li");
FamilyInfoMap.put("Mother", "Mrs.lin");
jsonObj.put("FamilyInfo", FamilyInfoMap);
//爱好信息
Map<String,Object> AiHaoMap1 = new HashMap<String,Object>();
AiHaoMap1.put("爱好1", 6);
AiHaoMap1.put("爱好2", "音乐");
jsonObj.put("AiHao", AiHaoMap1);
//同学信息
Map<String,Object> FriendMap2 = new HashMap<String,Object>();
FriendMap2.put("同学1", "xiaohong");
FriendMap2.put("同学2", "xiaoming");
jsonObj.put("FriendInfo", FriendMap2);
return jsonObj.toString();
}
}