2013-02-06 6 views
0

wsdl 기반 웹 서비스 (안드로이드 앱)에서 문자열 배열을 추출하기 위해 ksoap2를 사용하고 있습니다. 반환 된 배열을 어떻게 처리합니까? 3 ~ 4 줄의 코드가 필요합니다.이 줄을 사용하면 클래스에서 반환 된 배열을 저장하고 사용할 수 있습니다. 감사.wsdl에서 반환 한 배열을 처리하는 방법은 무엇입니까?

+0

[무엇을 시도해 봤습니까?] (http://mattgemmell.com/2008/12/08/what-have-you-tried/) –

+0

나는 명확하지 않으므로 아무 것도 시도하지 않았습니다. 그것을하는 방법. 그러나 웹 서비스가 국가 목록을 반환해야한다는 것을 알고있는 시점에 있습니다 (문자열 배열 형태로 가정합니다). –

답변

1
String r = NameArray.columncount("userid", limitstart, loadNumber,loggername); 
String temp = r.replaceAll(";\\s", ",").replaceAll("string=", " ") 
       .replace("anyType{", "").replace(",}", ""); 
String[] fulname = temp.split(",\\s+"); 

'NameArray.columncount가'(그에서 혼란스러워하지 않음)는 WSDL에서 배열을 가져옵니다 내 기능입니다

단계 여기에 1 내가 무엇입니까 배열 값은 WSDL에서 반환 이 경우에는 배열 배열을 얻고 있습니다. 반환 된 배열 문자열 r은 다음과 같습니다.

r = "anyType {string = 10054; string = 10055; string = 10056; string = 10056; 10035, 문자열 = 10052, 문자열 = 10036, 문자열 = 10037, 문자열 = 10038;} "

단계 2- 그런 다음 replaceAll 함수를 사용하여 원하지 않는 문자를 모두 제거하고 temp라는 String 변수를 만듭니다. 온도 원하지 않는 문자를 제거한 후이

온도처럼 보인다 = "10054은 10055, 10056은 10035, 10052은 10036은 10037은 10038는"

step3-

마지막으로 'fulname'및 분할라는 문자열 배열을 생성 와 수정 된 문자열은 '\의'분할 후 배열 fulname는 = [10054, 10055, 10056, 10035, 10052, 10036, 10037, 10038]

이 모든 때문에 잘 작동이

fulname처럼 보인다 wsdl 배열은 같은 unwa를 사용하여 같은 유형의 문자열을 반환합니다. nted 문자

당신이 이해 희망 행운

+0

빠른 응답을 보내 주셔서 감사합니다. 이 모든 것이 반복되어 있습니까? 그리고 wsdl은 문자열 전체 배열 대신 문자열을 반환합니까? –

+0

네, 고마워요. 집에 올 때 결과를 게시하면 테스트 해 볼게요. –

+0

wsdl에서 전체 배열로 값을 반환 할 수없는 다른 방법이있을 수 있으므로 반환 된 배열을 단일 문자열로만 가져올 수 있습니다. 그것은 문자열로 얻고 배열 자체를 처리하는 것이 가장 좋습니다. 배열을 다시 만듭니다. 내가 그랬듯이. –

관련 문제