javaandroid中如何通过拆分从字符串数组中获取字符串

javaandroid中如何通过拆分从字符串数组中获取字符串,java,android,json,Java,Android,Json,这是我的结果,我从服务器得到了我想要通过Soap得到的响应。我可以通过JSON解析这个值,但我在这样做时遇到了一个问题,因为我希望拆分这个值 Result=1~Saved successfully~{ "TABLE":[{ "ROW":[ { "COL":{ "UserID":"30068"}} ]}]} 我正在使用此代码获取tmpVal中的UserId值,但是我没有获得所需的结果 String tmpVal = returnValue.toString().split("~")[3];

这是我的结果,我从服务器得到了我想要通过Soap得到的响应。我可以通过JSON解析这个值,但我在这样做时遇到了一个问题,因为我希望拆分这个值

Result=1~Saved successfully~{ "TABLE":[{ "ROW":[ { "COL":{ "UserID":"30068"}} ]}]}

我正在使用此代码获取
tmpVal
中的
UserId
值,但是我没有获得所需的结果

String tmpVal = returnValue.toString().split("~")[3];

String tmpVal=returnValue.toString().split(“~”[3]

这将为您提供由
split
生成的数组中的第四个字符串,但由于
split
只生成了一个包含3个字符串的数组,因此此代码为您提供了一个例外

如果要获取
split
response-
{“TABLE”:[{“ROW”:[{“COL”:{“UserID”:“30068”}]}}
,则需要
returnValue.toString().split(“~”[2]

当然,首先测试
split
返回了多少字符串会更安全:

String[] splitResult = returnValue.toString().split("~");
if (splitResult.length > 2) {
    tempVal = splitResult[2];
}

String tmpVal=returnValue.toString().split(“~”[3]

这将为您提供由
split
生成的数组中的第四个字符串,但由于
split
只生成了一个包含3个字符串的数组,因此此代码为您提供了一个例外

如果要获取
split
response-
{“TABLE”:[{“ROW”:[{“COL”:{“UserID”:“30068”}]}}
,则需要
returnValue.toString().split(“~”[2]

当然,首先测试
split
返回了多少字符串会更安全:

String[] splitResult = returnValue.toString().split("~");
if (splitResult.length > 2) {
    tempVal = splitResult[2];
}

String tmpVal=returnValue.toString().split(“~”[3]

这将为您提供由
split
生成的数组中的第四个字符串,但由于
split
只生成了一个包含3个字符串的数组,因此此代码为您提供了一个例外

如果要获取
split
response-
{“TABLE”:[{“ROW”:[{“COL”:{“UserID”:“30068”}]}}
,则需要
returnValue.toString().split(“~”[2]

当然,首先测试
split
返回了多少字符串会更安全:

String[] splitResult = returnValue.toString().split("~");
if (splitResult.length > 2) {
    tempVal = splitResult[2];
}

String tmpVal=returnValue.toString().split(“~”[3]

这将为您提供由
split
生成的数组中的第四个字符串,但由于
split
只生成了一个包含3个字符串的数组,因此此代码为您提供了一个例外

如果要获取
split
response-
{“TABLE”:[{“ROW”:[{“COL”:{“UserID”:“30068”}]}}
,则需要
returnValue.toString().split(“~”[2]

当然,首先测试
split
返回了多少字符串会更安全:

String[] splitResult = returnValue.toString().split("~");
if (splitResult.length > 2) {
    tempVal = splitResult[2];
}

如上文注释部分所述,数组以索引0开头,因此如果数组有3个元素,则索引为0..1..2,而不是1..2..3

您只需更改
字符串tmpVal=returnValue.toString().split(“~”[3]至:

String tmpVal = returnValue.toString().split("~")[2];
因为这将获得第三个元素,而不是你一直尝试的第四个元素


如上文注释部分所述,数组以索引0开头,因此如果数组有3个元素,则索引为0..1..2,而不是1..2..3

您只需更改
字符串tmpVal=returnValue.toString().split(“~”[3]至:

String tmpVal = returnValue.toString().split("~")[2];
因为这将获得第三个元素,而不是你一直尝试的第四个元素


如上文注释部分所述,数组以索引0开头,因此如果数组有3个元素,则索引为0..1..2,而不是1..2..3

您只需更改
字符串tmpVal=returnValue.toString().split(“~”[3]至:

String tmpVal = returnValue.toString().split("~")[2];
因为这将获得第三个元素,而不是你一直尝试的第四个元素


如上文注释部分所述,数组以索引0开头,因此如果数组有3个元素,则索引为0..1..2,而不是1..2..3

您只需更改
字符串tmpVal=returnValue.toString().split(“~”[3]至:

String tmpVal = returnValue.toString().split("~")[2];
因为这将获得第三个元素,而不是你一直尝试的第四个元素



那么解决方案是什么呢?或者这没有给我正确的答案,这给了我{“表”:[{“行”:[{“列”:“{“列”:“{”UserID:“30073”}]}]}@amitsharma如果你需要UserID,你必须继续分割结果。@amitsharma你可以这样做,例如,
分割(“\“UserID\”:\”)[1]
,这将返回
30068”}
。然后你可以删除ID后面的剩余字符。那么解决方法是什么呢?或者这没有给我正确的答案这给了我{“表”:[{“行”:[{“列”:[{“列”:{“用户ID”:“30073”}]}]}@amitsharma如果你需要用户ID,你必须继续分割结果。@amitsharma你可以做,例如,
.split(“\“用户ID\”:\”)[1]
,它将返回
30068“}]}
。然后你可以删除ID后面的剩余字符。那么解决方法是什么呢?或者这没有给我正确的答案这给了我{“表”:[{“行”:[{“列”:[{“列”:{“用户ID”:“30073”}]}]}@amitsharma如果你需要用户ID,你必须继续分割结果。@amitsharma你可以做,例如,
.split(“\“用户ID\”:\”)[1]
,它将返回
30068“}]}
。然后你可以删除ID后面的剩余字符。那么解决方法是什么呢?或者这没有给我正确的答案这给了我{“表”:[{“行”:[{“列”:[{“列”:{“用户ID”:“30073”}]}]}@amitsharma如果你需要用户ID,你必须继续分割结果。@amitsharma你可以做,例如,
.split(“\“用户ID\”:\”)[1]
,它将返回
30068“}]}
。然后可以删除ID之后的剩余字符。java中的数组从零开始索引。您正在尝试在拆分后调用三个元素中的第四个。java中的数组从零开始索引。您正在尝试在拆分后调用三个元素中的第四个