이전 파일에서 새 프로젝트를 작성하는 중입니다. 구성 파일을 복사하는 것을 잊었으며 물론 작동하지 않습니다. NSXMLparser
을 사용하여 구성 파일을 읽었지만 오류를 올바르게 다시보고하지 않습니다.NSXMLParser의 오류 처리
NSXMLParser
으로 파일 액세스 오류를 감지하는 적절한 방법은 무엇입니까?
잘못된 URL로 NSXMLParser
을 초기화하고 있습니다. 이니셜 라이저는 유효한 객체를 반환합니다.
[xml parse]
으로 전화하면 오류를 나타내는 FALSE
을 반환합니다.
그러나 [xml parserError]
메서드는 null
을 반환합니다.
파일 액세스 오류를 감지하는 데 좋은 코딩 순서가 표시되지 않습니다. 요청으로
코드를 사용 :
- (void)parser:(NSXMLParser *)parser parseErrorOccurred:(NSError *)parseError
{ // Does not print with missing file
NSLog(@"Location File Error %@", parseError) ;
}
-(id) initWithURL:(NSURL *) url // For my class
{
self = [super init] ;
if (self)
{
xmlParser = [[NSXMLParser alloc] initWithContentsOfURL:url] ;
xmlParser.delegate = self ;
if (![xmlParser parse])
{
NSError *error = [xmlParser parserError] ;
NSLog (@"Error parsing '%@'\n%@", url, error) ; // Error is null
}
}
return self ;
}
수행 한 작업에 대한 코드를 추가하십시오. – ZeMoon
URL을 NSXMLParser에 전달하기 전에 유효성을 검사 할 수 있습니까? –
NSURL * url = [NSURL fileURLWithPath : 경로]; –