Java中如何把一下字符串轉換成map


首先,你先確認你的字符串是否是json格式的,如果是json格式,那你可以使用Gson.jar或json-lib-xx-jdk.jar兩個包來自動解析解析。
  使用Gson更簡單些,只需要導入一個包就可以,但是他如果使用Object解析到int型的話或自動轉成double型,需要定義一個准確的類來解析,不能直接使用Object。示例:


Gson gson = new Gson();
Map<String, Object> map = new HashMap<String, Object>();
map = gson.fromJson(str, map.getClass());
  使用json-lib包的話需要導入更多的包,需要額外導入commons-lang.jar、ezmorph-1.0.4.jar、commons-logging-1.1.1.jar、commons-collections.jar、commons-beanutils.jar這5個包。解析示例如下:


JSONObject jb = JSONObject.fromObject(str);
Map<String, Object> map = (Map<String, Object>)jb;
  如果你的字符串不是json格式,那你就需要自己使用split分割字符串,例如:

String str = "color:red|font:yahei|width:800|height:300";
String[] strs = str.split("\\|");
Map<String, String> m = new HashMap<String, String>();
for(String s:strs){
String[] ms = s.split(":");
m.put(ms[0], ms[1]);
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM