2011-01-19 9 views
4

NSTextViewオブジェクトをアプリケーションに追加し、テキストバンドルのアプリケーションバンドルにある.txtファイルを開くアクションを追加します。また、名前を変更せずに編集して保存するオプションがあります。だから標準の保存は、保存しないでください。NSTextViewオブジェクトを含むアプリケーションバンドルにある.txtファイルを開く/編集する

これを処理する最善の方法は何ですか?

+0

ただ、これはNSTextViewはなくUITextViewについてですので、私は私の答えを削除実現... – omz

答えて

12

使用NSStringのファイルをロードして、テキストビューでそれを置くために:

NSTextView *textView; //your NSTextView object 
NSError *err = nil; 
NSString *path = [[NSBundle mainBundle] pathForResource:@"EditableFile" ofType:@"txt"]; 
NSString *contents = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:&err]; 
if(!contents) { 
    //handle error 
} 
[textView setString:contents]; 

の保存は正反対です。文字列を取得し、ファイルに書き込む:

NSTextView *textView; //your NSTextView object 
NSError *err = nil; 
NSString *path = [[NSBundle mainBundle] pathForResource:@"EditableFile" ofType:@"txt"]; 
NSString *contents = [textView string]; 
if(![contents writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:&err]) { 
    //handle error 
} 
+0

恐ろしい - ありがとう... – Paul

+0

私はNSTextView *のTextViewをコメントアウトロードファイルメソッド。それはうまく動作します。私は仕事を保存することができません... – Paul

+0

これを少し拡大するには - 節約まで、バンドルに複数のファイルがある場合はどうすればいいですか? saveメソッドは、textViewの内容を保存する必要があります。何か案は? – Paul

関連する問題