2014-11-05 1 views
0

GDataXMLDocument을 사용하고 있습니다. 아주 간단한 XML 문자열을 구문 분석해야합니다.[dataUsingEncoding : NSUTF8StringEncoding]을 시도 할 때 GDataXMLDocument에서 문제가 발생합니까?

-[myObj dataUsingEncoding:]: unrecognized selector sent to instance 0x7afb5690 

내 문자열은 다음과 같습니다 : 나는 문자열로 초기화 XML하려고 할 때이 오류가 발생

<rootNode> 
    <detail1>value</detail1> 
    <detail2>value</detail2> 
    <detail3>value</detail3> 
    <detail4>value</detail4> 
</rootNode> 

오류의 라인은 다음과 같습니다 내를 인코딩해야

NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding]; 

문자열은 NSData가 아니므로이 파서를 초기화 할 수 있습니다.

나는 문제가 NSUTF8StringEncoding에 있다고 생각하지만, 나는 그 이유를 이해할 수 없다!

컴파일 옵션에 GDataXML을 설정하면 ARC와 NON ARC를 함께 사용하고 있습니다.

해결 방법?

P. 나는 중요한 발언을하고있다. SOAP 서비스에서 배열을받습니다. 내 수업을 만들려면 sudzc.com 도구를 사용했습니다. SOAP 서비스는 나에게 구조 배열을 보낸다. po 명령을 사용하여 데이터를 수신하면 내부에 무엇이 있는지 확인하고 내부에 XML 스팅이있는 NSArray로 구성됩니다. 일반적으로 배열의 각 요소를 추출하고 XML로 구문 분석하여 필요한 데이터를 추출합니다.

내가 잘못했기 때문에 그 오류가 발생할 수 있습니다.

답변

0

나는 이유를 알고하지 않습니다하지만 난 그것을 사용하는 형식 NSString 다시 한 번 캐스팅 해결 :이 필요한 이유

NSString *properStr = [NSString stringWithFormat:@"%@", str]; 

나는 잘 모르겠지만, 지금은 wotking된다.

관련 문제