package com.qxueyou.scc.base.util;
|
|
import java.util.HashMap;
|
import java.util.Iterator;
|
import java.util.Map;
|
import java.util.Map.Entry;
|
import java.util.StringTokenizer;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import com.alibaba.fastjson.JSON;
|
|
/**
|
* String ºÍ map<String,String>µÄת»»
|
* @author ody.yuan
|
*
|
*/
|
public class StringMapUtils {
|
|
/**
|
* Map<String,String> ת String
|
*
|
* @param map ÐèҪת»»µÄmap
|
* @return
|
*/
|
public static String transMapToString(Map<String,String> map){
|
|
if(null == map || map.isEmpty()){
|
return "";
|
}
|
|
Entry<String,String> entry;
|
StringBuffer sb = new StringBuffer();
|
for(Iterator<Entry<String, String>> iterator = map.entrySet().iterator(); iterator.hasNext();){
|
entry = (Entry<String,String>)iterator.next();
|
sb.append(entry.getKey().toString()).append( "'" ).append(null==entry.getValue()?"":
|
entry.getValue().toString()).append (iterator.hasNext() ? "^" : "");
|
}
|
return sb.toString();
|
}
|
|
/**
|
* µ÷ÓÃtransMapToString·½·¨ÓÐmapתµÃString£¬ÖØÐÂת»Ømap
|
*
|
* @param mapString µ÷ÓÃtransMapToString·½·¨ÓÐmapתµÃString
|
* @return
|
*/
|
public static Map<String,String> transStringToMap(String mapString){
|
|
if(StringUtils.isBlank(mapString)){
|
return new HashMap<String,String>();
|
}
|
|
Map<String,String> map = new HashMap<String,String>();
|
StringTokenizer items;
|
for(StringTokenizer entrys = new StringTokenizer(mapString, "^");entrys.hasMoreTokens();
|
map.put(items.nextToken(), items.hasMoreTokens() ? (String.valueOf(items.nextToken())) : null)){
|
items = new StringTokenizer(entrys.nextToken(), "'");
|
}
|
return map;
|
}
|
|
/**
|
* json ת map
|
* @param json
|
*/
|
@SuppressWarnings("unchecked")
|
public static Map<String,Object> json2Map(String json){
|
|
Map<String,Object> map = (Map<String,Object>)JSON.parse(json);
|
|
return map ;
|
|
}
|
|
/**
|
* map ת json
|
* @param json
|
*/
|
public static String map2Json(Map<String,Object> map){
|
|
String json = JSON.toJSONString(map,true);
|
|
return json ;
|
}
|
|
/**
|
*
|
* @param args
|
*/
|
public static void main(String[] args) {
|
|
String a = "{mobilePhone:'aa',userName:'123'}";
|
Map<String,Object> m1 = json2Map(a);
|
Entry<String,Object> entry1;
|
for(Iterator<Entry<String, Object>> iterator1 = m1.entrySet().iterator(); iterator1.hasNext();)
|
{
|
entry1 = (Entry<String,Object>)iterator1.next();
|
System.out.println(entry1.getKey() + ":" + entry1.getValue());
|
}
|
|
Map<String,String> s = new HashMap<String,String>();
|
s.put("qq", "3225545");
|
s.put("moile", "133");
|
s.put("name", "stkkk");
|
|
Map<String,Object> s1 = new HashMap<String,Object>();
|
s1.put("qq", "3225545");
|
s1.put("moile", "133");
|
s1.put("name", "stkkk");
|
System.out.println(map2Json(s1));
|
|
System.out.println(transMapToString(s));
|
|
Map<String,String> m = transStringToMap("qq'3225545^moile'133^name'stkkk");
|
Entry<String,String> entry;
|
for(Iterator<Entry<String, String>> iterator = m.entrySet().iterator(); iterator.hasNext();)
|
{
|
entry = (Entry<String,String>)iterator.next();
|
System.out.println(entry.getKey() + ":" + entry.getValue());
|
}
|
|
}
|
|
}
|