2013-05-03 7 views
0

Obj의 텍스트 파일에서 정보를 읽으려고합니다. C 프로그램과 NSLog 출력을 시도 할 때마다, 나는 (null)을 얻고있다. 필자가 작업하고있는 텍스트 파일이 Copy Bundle Resources에 있음을 확인했습니다. 다른 모든 대답이 나와 있습니다. 파일을 액세스하려면 다음을 사용하고 있습니다.Obj C 파일을 읽는 중 txt 파일을 찾을 수 없습니다.

NSString *rightsPath = [[NSBundle mainBundle] pathForResource:@"Sample Maze Rights" ofType:@"txt"]; 
NSString *rightsContent = [NSString stringWithContentsOfFile:rightsPath encoding:NSUTF8StringEncoding error:NULL]; 

누구든지 의견을 남길 수 있습니까?

+0

'.txt'라고 확신합니까? – Ankur

+1

'error' 매개 변수를 사용하고 오류를 기록하십시오. – rmaddy

답변

1

그게 error 인수입니다.

NSError *error = nil; 
NSString *rightsContent = [NSString stringWithContentsOfFile:rightsPath 
                encoding:NSUTF8StringEncoding 
                 error:&error]; 
if (rightsContent == nil) 
    NSLog(@"error: %@", [error description]); 
+0

우수. 이 코드는이 문제를 해결하지만 오류는 다음 예외를 보여줍니다. Error Domain = NSCocoaErrorDomain Code = 258 "작업을 완료 할 수 없습니다 (Cocoa 오류 258)."UserInfo = 0x6870930 {}. 이미 사본 번들 리소스에 파일을 추가 했으므로 문제를 일으킬 수있는 다른 것을 생각해 볼 수 있습니까? 감사!! –

+0

오류 코드는 Google에서 먼저 무엇을 물어 본 다음 물어보십시오. http://petosoft.wordpress.com/2011/11/15/cocoa-error-258-when-using-stringwithcontentsoffile/ 경로가 0이 아닌 것은 확실합니까? –

+0

경로가 정확하다면 NSLog를 시도한 다음 Terminal.app :'ls -l ""'(꺾쇠 괄호는 사용하지 않음)에서이 명령을 실행하십시오. 그러면 파일이 실제로 있는지 여부와 그 파일에 대한 사용 권한이 표시됩니다. '-r --------'로 충분하다.'-rw -------'도 괜찮다. –

관련 문제