1
websevice를 통해 반환 된 XML 데이터를 구문 분석하여 서버에서 값을 가져 오려고합니다.xml 서비스에서 값을 가져 오는 동안 문자열 대신 n이 표시됩니다.
분석에 사용 된 코드
-(void) parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
rValue= @"";
isTag = FALSE;
if ([elementName caseInsensitiveCompare:@"BusinessName"] == NSOrderedSame)
isTag=YES;
}
-(void) parser:(NSXMLParser *)parser foundCharacters:(NSString *)strin{
if (isTag) {
rValue =strin;
}
}
-(void) parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
if([elementName caseInsensitiveCompare:@"BusinessName"] == NSOrderedSame)
[myarray addObject:rValue];
}
-(void) parserDidEndDocument:(NSXMLParser *)parser
{
NSLog(@"%@",myarray);
}
rValue
정적 스트링 아래이고;
내 배열을 인쇄 한 후에는
(
"Book Store",
"Birch river grill",
PIC,
"Drink Juice",
"Cofee Cafee",
"Diag Block",
"Delici Store",
"\n\n",
"Spoon Fork",
"\n",
"\n\n",
"\n\n\n",
Allow,
"Enjoy Traveling",
"Grwing Three",
"\n",
"\n\n"
)
이 왜 \ n을 (백 슬래시)이 값은, 내가 브라우저에서 웹 서비스를 선택? 값 (BUSINESSNAME) 대신에 발생하는되어, 다음과 같습니다 을 올바로 반환합니다. 완전히 17 개의 요소가 반환되며 이중 qout없이 로그에 인쇄 된 일부 문자열을 볼 수 있습니다. 그것은 문제가되지 않습니다. 그러나, 왜 그렇게 보이는 것일까 요? 백 슬래시 대신 올바른 값을 얻으려면 어떻게해야합니까?
- 내가 뭘 잘못하고 있니?
- 어떻게 해결할 수 있습니까?
foundCharacters
이후
지금은 같은 배열을 얻고있다' "서점 :이 후행 문자를 필요로하지 않는 경우
stringByTrimmingCharactersInSet:
를 호출하고 매개 변수로[NSCharacterSet whitespaceAndNewlineCharacterSet]
전달하여, 예를 들어, 수동으로 제거해야합니다 \ n ", "자작 나무 강철 그릴 \ n ", "PIC \ n ", "주스 마셔 \ n "'어떻게 수정합니까? – NAZIK즉,'\ n'을 추가 문자열을 방지하는 방법은 무엇입니까? pl가 제안한다. – NAZIK
제안 사항이 있으십니까? – NAZIK