从JSONArray输出中删除引号

在成功的调用中,我获得了带有键“ objects”的JSONArray,再次是带有键“ name”的testValue。输出为:

"Abcd"

"Wxyz"

我的代码如下:

public void onSuccess(JSONValue val) {

JSONObject obj = val.isObject();

JSONArray test = JSONUtil.getJSONArray(test, "objects");

for (int i = 0; i < test.size(); i++) {

JSONObject childJSONObject = (JSONObject) test.get(i);

JSONValue testValue = childJSONObject.get("name");

System.out.println(testValue);

}

}

想要按以下方式打印名称:(不带双引号)

Abcd

Wxyz

回答:

testValue.toString().replaceAll("\"", "");

此方法将替换您名字中出现的所有双引号,而不是第一个和最后一个。

示例:“ Abcd”变为Abcd,但如果名称为“ Ab” cd“,则根据您的要求应为Ab” cd,但它变为Abcd。意思是说所有双引号都被替换了。

如果要使用子字符串方法,请使用以下语法从字符串中删除第一和最后一个双引号:

testValue.toString().subString(1,testValue.toString().length()-1);

1 -指示字符串的第一个字符

testValue.toString().length()-1 :表示字符串的最后一个字符。

不知道在您的情况下为什么它不起作用?(可能是因为字符串本身包含引号)否则,最好的方法是将JSONValue转换为StringString.ValueOf(testValue);

要么

childJSONObject.getString("name");

否则将优先级设置为:3> 2> 1

以上是 从JSONArray输出中删除引号 的全部内容, 来源链接: utcz.com/qa/401631.html

回到顶部