免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4994 | 回复: 1
打印 上一主题 下一主题

java url转map ,map转string [复制链接]

论坛徽章:
1
操作系统版块每日发帖之星
日期:2015-06-19 22:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2015-07-16 13:55 |只看该作者 |倒序浏览
[Java]代码
  1. package com.jiyuren.fast.utils;

  2. import java.util.ArrayList;
  3. import java.util.Collections;
  4. import java.util.HashMap;
  5. import java.util.List;
  6. import java.util.Map;

  7. /**
  8. * @author jiyuren
  9. */
  10. public class UrlEncode {
  11.   /**
  12.    * 将 String 转为 map
  13.    *
  14.    * @param param
  15.    *            aa=11&bb=22&cc=33
  16.    * @return
  17.    */
  18.   public static Map<String, Object> getUrlParams(String param) {
  19.       Map<String, Object> map = new HashMap<String, Object>();
  20.       if ("".equals(param) || null == param) {
  21.           return map;
  22.       }
  23.       String[] params = param.split("&");
  24.       for (int i = 0; i < params.length; i++) {
  25.           String[] p = params[i].split("=");
  26.           if (p.length == 2) {
  27.               map.put(p[0], p[1]);
  28.           }
  29.       }
  30.       return map;
  31.   }

  32.   /**
  33.    * 将map 转为 string
  34.    *
  35.    * @param map
  36.    * @return
  37.    */
  38.   public static String getUrlParamsByMap(Map<String, Object> map,
  39.           boolean isSort) {
  40.       if (map == null) {
  41.           return "";
  42.       }
  43.       StringBuffer sb = new StringBuffer();
  44.       List<String> keys = new ArrayList<String>(map.keySet());
  45.       if (isSort) {
  46.           Collections.sort(keys);
  47.       }
  48.       for (int i = 0; i < keys.size(); i++) {
  49.           String key = keys.get(i);
  50.           String value = map.get(key).toString();
  51.           sb.append(key + "=" + value);
  52.           sb.append("&");
  53.       }
  54.       String s = sb.toString();
  55.       if (s.endsWith("&")) {
  56.           s = s.substring(0, s.lastIndexOf("&"));
  57.       }
  58.       /*
  59.        * for (Map.Entry<String, Object> entry : map.entrySet()) {
  60.        * sb.append(entry.getKey() + "=" + entry.getValue()); sb.append("&"); }
  61.        * String s = sb.toString(); if (s.endsWith("&")) { //s =
  62.        * StringUtils.substringBeforeLast(s, "&"); s = s.substring(0,
  63.        * s.lastIndexOf("&")); }
  64.        */
  65.       return s;
  66.   }

  67.   public static void main(String[] args) {
  68.       Map<String, Object> map = new HashMap<String, Object>();
  69.       map.put("age", "20");
  70.       map.put("sex", "man");
  71.       map.put("name", "zhangsan");
  72.       System.out.println(getUrlParamsByMap(map, false));

  73.   }
  74. }
复制代码

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
2 [报告]
发表于 2015-08-12 13:05 |只看该作者
这么转的目的是什么 ?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP