2012-02-20 4 views
0

NSTextView 데이터를 RTF 문서로 내보내려고합니다. 내 오래된 코드, 주로 NSSavePanel의 "filename"은 가치가 떨어집니다. 문서에는 "URL 사용"이라고 나와 있습니다. 어떻게해야합니까?NSTextViewData를 RTF 문서에 저장

감사합니다.

NSSavePanel *panel = [NSSavePanel savePanel]; 

[panel setAllowedFileTypes:[NSArray arrayWithObject:@"rtf"]]; 
if ([panel runModal] == NSOKButton){ 


[[textView RTFFromRange: 
     NSMakeRange(0, [[textView string] length])] 
    writeToFile:[panel filename] atomically:YES]; 

} 

답변

0

이 문서는 NSSavePanelURL 방법을 사용한다 말하듯.

코드는 동일하게 표시되지만, 대신 NSStringwriteToURL:atomically:encoding:error: 방법을 사용합니다 :

NSSavePanel *panel = [NSSavePanel savePanel]; 

[panel setAllowedFileTypes:[NSArray arrayWithObject:@"rtf"]]; 
if ([panel runModal] == NSOKButton){ 
    [[textView RTFFromRange:NSMakeRange(0, [[textView string] length])] writeToURL:[panel URL] atomically:YES encoding:NSUTF8StringEncoding error:NULL]; 
} 

참고 두 개의 매개 변수를 인코딩을 지정합니다 (여기에 내가 설정 UTF-8) 및 오류 개체 . 여기서 NULL을 제공하지만 유효한 객체를 제공하여 오류 정보를 얻을 수 있습니다.

관련 문제