将值字符串转换为Java中的对象

时间:2016-07-18 03:16:55

标签: java gson

我有一个像"name=lokesh,age=25"这样的字符串。我想按属性名称检索这些值。

我尝试使用Google Gson将其转换为JsonObject。但它引发了一个错误,因为它无效JsonObject

是否可以通过Obj.get("name")

等每个属性检索这些值

1 个答案:

答案 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>