java - Java 解析字符串

标签 java string parsing

我有一个字符串:

["4fd1cf1783353a15415","4ffecf87fcc40d110a965626"]

["4fd5f684815345","4fd6ef3e60a676854651","4fd83c33c19164512153"]

我想将每个ID(例如4fd5f684815345、4fd6ef3e60a676854651、4fd83c33c19164512153...)存储在独立的字符串(或ArrayList)中。

如何解析它,因为字符串可以是动态的(1、2、3 个值或更多)?

OR JSON 数组解析:

我的 JSON

"idCards":[
"4fc52f95egvt418541515",
"4fd1d05454151541545115"
],

我的代码的一部分:

msg3 = (JSONArray) myobject.get("idCards");
System.out.println(msg3.toJSONString()); 

结果:

[4fc52f95egvt418541515","4fd1d05454151541545115"]

我想要这 2 个值在 2 个不同的字符串中。

非常感谢您的帮助!

最佳答案

这似乎可能是一个 JSON 字符串。在这种情况下,您可以使用 Java JSON 库来帮助您将其解析为 Java native 对象。

http://www.json.org/

http://code.google.com/p/google-gson/

String data = "[\"4fd5f684815345\",\"4fd6ef3e60a676854651\",\"4fd83c33c19164512153\"]";

// parse JSON String to JSON Array
JsonArray array = (JsonArray) (new JsonParser()).parse(data);

// build a Java ArrayList
List<String> stringList = new ArrayList<String>();

// for each item in JsonArray, add to Java ArrayList
for (int i = 0; i < array.size(); i++) {
    stringList.add((array.get(i)).getAsString());
}

关于java - Java 解析字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11576824/

相关文章:

python 正则表达式分隔字符串的元素

java - 错误转换解析时间 dd.MM.yyyy', '12 :00

r - 通过单词向量分割长字符串

javascript - 使用 Javascript 删除字符串中最后一次出现的逗号

java - 帮我解析这种 json for android

python - 在 Python 中解析大型伪 csv 日志文件

php - 使用 PHP-CSS-PARSE 解析 css 并生成文件

Java - 4 线程在两个同步方法中操作相同的对象数据

java - 防止文件碎片

java - 为什么即使调用了 repaint(),我的 GUI 也不会更新?