2010-04-15 5 views
4

이상한 이유로 \ n 및 \ r 이스케이프 시퀀스가 ​​내 코드에서 작동하지 않는 것 같습니다. 파일의 새 줄에 각 NSString을 쓰고 싶지만 한 줄에 마지막 문자열을 추가합니다. 코드는 다음과 같습니다.Objective-C에서 파일의 새 줄에 쓰기

for (Entry *entry in self.entries) { 
    NSString *path = @"/Users/me/File.txt"; 
    NSString *string = (@"%@\r\n", [entry thisEntry]); 
    NSFileHandle *fh = [NSFileHandle fileHandleForWritingAtPath:path]; 
    [fh seekToEndOfFile]; 
    [fh writeData:[string dataUsingEncoding:NSUnicodeStringEncoding]]; 
    [fh closeFile]; 
} 

잘못된 것이 있습니까? Objective-C를 처음 접했을 때 나를 용서해주십시오.

답변

13

귀하의 문제는 이것이다 :

NSString *string = (@"%@\r\n", [entry thisEntry]); 

그것은해야한다 :

NSString *string = [NSString stringWithFormat:@"%@\r\n", [entry thisEntry]]; 
+0

아, 그래! 그게 ... 완벽하게 작동하는 것 같습니다. 내 부분에 꽤 바보 같은 실수처럼 보입니다. 다시 한 번 감사드립니다! – Kulpreet