Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在java中拆分javascript返回的字符串对象_Java_Parsing_Split - Fatal编程技术网

如何在java中拆分javascript返回的字符串对象

如何在java中拆分javascript返回的字符串对象,java,parsing,split,Java,Parsing,Split,我有一个对象的字符串数组,作为单个字符串从javascript拉入java。看起来像这样 [ {"sourcevalue":"KRISHNA@IN.IBM.COM","userIdValue":"Krishna L Pappu - krishnalakshmi","objectId":"A1001001A20E08A74322C03420"}, {"sourcevalue":"KRISHNA@IN.IBM.COM","userIdValue":"Krishna L Papp

我有一个对象的字符串数组,作为单个字符串从javascript拉入java。看起来像这样

[
   {"sourcevalue":"KRISHNA@IN.IBM.COM","userIdValue":"Krishna L Pappu - 
    krishnalakshmi","objectId":"A1001001A20E08A74322C03420"},
   {"sourcevalue":"KRISHNA@IN.IBM.COM","userIdValue":"Krishna L Pappu - 
    krishnalakshmi","objectId":"A1001001A20E08A74322C03420"},
   {"sourcevalue":"KRISHNA@IN.IBM.COM","userIdValue":"Krishna L Pappu - 
    krishnalakshmi","objectId":"A1001001A20E08A74322C03420"}
]
现在我想知道如何在简单java中将其拆分为如下对象:

{"sourcevalue":"KRISHNA@IN.IBM.COM","userIdValue":"Krishna L Pappu - krishnalakshmi","objectId":"A1001001A20E08A74322C03420"}

{"sourcevalue":"KRISHNA@IN.IBM.COM","userIdValue":"Krishna L Pappu - krishnalakshmi","objectId":"A1001001A20E08A74322C03420"}

{"sourcevalue":"KRISHNA@IN.IBM.COM","userIdValue":"Krishna L Pappu - krishnalakshmi","objectId":"A1001001A20E08A74322C03420"}

我尝试了
split
方法,但它太笨拙了。提前感谢正如
@Rabbit
所说,创建一个反序列化程序。有很多方法可以做到这一点,示例可以是:

class SimpleObj {
  private String sourceValue;
  private String userIdValue;
  private String objectId;
  ... getters, and setters ommited

  public static List<SimpleObj> deserializer(String data){
    Type objType = new TypeToken<ArrayList<SimpleObj>>() {}.getType();
    return new ArrayList<>(new Gson().fromJson(data, objType));
  }
}
类SimpleObj{
私有字符串源值;
私有字符串userIdValue;
私有字符串objectId;
…接球手和二传手
公共静态列表反序列化器(字符串数据){
Type objType=new-TypeToken(){}.getType();
返回新的ArrayList(new Gson().fromJson(data,objType));
}
}
接收字符串的方法
反序列化器
需要
Gson()
库才能工作,因此将其导入到
类路径
,该方法将帮助您将传入字符串更改为对象列表,如您所需


我希望这会有所帮助。

我使用这段代码来实现我从Javascript获得的json对象列表的反序列化要求。希望这有助于对从前端检索的对象列表进行反序列化

@SuppressWarnings("unchecked")
public static AttributeValue[] jsonToObject (String jsonObj, Class gilClass) {      
    Gson gson = new Gson(); 
    return gson.fromJson(jsonObj, AttributeValue[].class);      

}

向我们展示您使用
拆分的尝试。为什么太笨拙了?您应该解析它并使用java对象。您到底需要什么?似乎您需要反序列化json对象。谢谢@EtekaChristopher,我使用gson进行序列化,这很有帮助