我有一个像"name=lokesh,age=25"
这样的字符串。我想按属性名称检索这些值。
我尝试使用Google Gson将其转换为JsonObject
。但它引发了一个错误,因为它无效JsonObject
。
是否可以通过Obj.get("name")
等
答案 0 :(得分:3)
您可以将字符串转换为地图:
String str = "name=lokesh,age=25";
Map<String,String> map = new HashMap<String,String>();
for(String keyValueStr: str.split(",")){
String[] keyValue = keyValueStr.split("=");
map.put(keyValue[0],keyValue[1]);
}
然后,您可以通过按键
自由访问这些值String name = map.get("name");
或者使用guava的Splitter(我不会仅为此添加依赖项):
String str = "name=lokesh,age=25";
Map<String, String> map = Splitter.on(",").withKeyValueSeparator("=").split(str);
具有以下依赖关系:
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>17.0</version>
</dependency>