2012-03-19 3 views
2

Mac 용 Cocoa 응용 프로그램을 개발 중입니다. 파일의 데이터를 새 파일의 기존 파일에 추가해야합니다. 코드를 따라이 작업을 수행하려고합니다 :새 라인 코코아에 기존 파일에 데이터 추가

NSData * theData = [NSData dataWithContentsOfFile: @"~/Desktop/test/new.rtf" 
              options: NSMappedRead 
              error: &error]; 
NSFileHandle *output = [NSFileHandle fileHandleForWritingAtPath:@"~/Desktop/test/test.rtf"]; 
[output seekToEndOfFile]; 
[output writeData:theData]; 

그러나이 코드는 작동하지 않습니다. 이 코드는 아무 것도하지 않습니다. 또한 오류를주지 않거나 new.rtf 파일의 데이터를 test.rtf에 기록하지 마십시오. 모든 아이디어 어떻게 new.rtf 파일의 데이터를 test.rtf에 새 줄에 추가 할 수 있습니까 ??

답변

3
NSString *readFile = [@"~/Desktop/test/new.rtf" stringByExpandingTildeInPath]; 
NSString *writeFile = [@"~/Desktop/test/test.rtf" stringByExpandingTildeInPath]; 

NSData * theData = [NSData dataWithContentsOfFile:readFile 
              options:NSMappedRead 
              error:NULL]; 

NSFileHandle *output = [NSFileHandle fileHandleForUpdatingAtPath:writeFile]; 
[output seekToEndOfFile]; 
[output writeData:theData]; 
[output closeFile]; 
+0

이미 전체 경로를 제공했지만 작동하지는 않았습니다. –

+0

'[output closeFile];'을 사용하여 파일 핸들을 닫으면 어떻게 될까요? – Enchilada

+0

파일 핸들을 닫은 후에도 아무 일도 일어나지 않습니다. –

관련 문제