2011-08-28 2 views
0
[wordlist writeToFile:[[NSBundle mainBundle] 
pathForResource:@"wordlist" ofType:@"txt"] atomically: YES]; 

wordlist는 NSMutableArray이고 나머지는 무엇을 알고 있습니다.objective-c 간단한 nsarray writeToFile 문제

문제는 Xcode에서 코드를 실행할 때 wordlist.txt에 아무 것도 저장되지 않는다는 것입니다. 이 코드 앞에 nslog는 단어 목록에 4 개의 개체가 있음을 보여줍니다. 어째서?


편집 : 오른쪽!

이 코드가 작동! :

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentsDirectory = [paths objectAtIndex:0]; 
NSString *yourArrayFileName = [documentsDirectory stringByAppendingPathComponent:@"wordlist.txt"]; 
[wordlist writeToFile:yourArrayFileName atomically:YES];  
NSLog (@"%@", yourArrayFileName); 

편집 (29) 2011 년 8 월

NSString *documentsDirectory = @"/Users/YOURNAME/Desktop/"; 
    NSString *appFile = [documentsDirectory stringByAppendingPathComponent:@"norsk.txt"]; 

    NSString *content = @"æ ø å"; 
    BOOL ok = [content writeToFile:appFile atomically:YES encoding:NSUnicodeStringEncoding error:nil]; 
    if (!ok) { 
     NSLog(@"Error writing file !"); 
    } 

도 작동합니다!

답변

4

당신은 앱 번들을 쓸 수 없습니다.

사용자 디렉토리에 작성해야합니다. 이 question에서 자세한 내용을 알 수 있습니다. 문서 디렉토리 :

당신이

  • NSDocumentDirectory 쓸 수있는 세 개의 디렉토리가 있습니다. 사용자가이 파일을 볼 수 있습니다. 이 파일은 사용자 파일에만 사용해야합니다. iTunes에 의해 백업.
  • NSCachesDirectory : 캐시 디렉토리는 나중에 필요할지도 모르는 것들을 배치하는 곳이지만 재구성 할 수 있습니다. iTunes에서 백업하지 않습니다.
  • NSApplicationSupportDirectory : 응용 프로그램 지원은 응용 프로그램에 필수 파일을 저장하는 곳입니다. iTunes에 의해 백업.