質問

ファイル上のいくつかのNSFileHandle関数をテストするために、小さなテキストファイルを開こうとしています。しかし、私がこれを行う方法を理解することはできません。もしあなたが私が欠けていることを私に言うことができれば、それは素晴らしいことです。

//.h

@interface MainViewController : UIViewController <FlipsideViewControllerDelegate> {
    NSFileHandle *nCode;
}
@property (nonatomic, retain) IBOutlet NSFileHandle *nCode;

- (IBAction)showInfo:(id)sender;

//check for code
- (void)fetchCode:(id)sender; //this function is attached to a button in the .nib

@end

//.M。

- (void)fetchCode:(id)sender{
nCode = [NSFileHandle fileHandleForReadingAtPath:@"nCode01.txt"];

if (nCode == nil) {
    NSLog (@"Open of nCode for reading failed\n");
    return;
}

 [nCode closeFile];
}

ここでやっているのはファイルを開こうとすることですが、ボタンを押すたびに「読み取りのためにNCODEの開く」というエラーメッセージを受信するたびに、私は何が間違っていますか?

これから、ユーザーがテキストファイルの行の行を表す番号を入力してから、その行にあるテキストを返す方法を見つけたいと思っています。出来ますか?

役に立ちましたか?

解決

おそらく問題は、フルパス名を指定していないため、ファイルパスです。アプリケーションバンドル内のファイルにアクセスする場合は、使用してください -[NSBundle pathForResource:ofType]:

NSString *path = [[NSBundle mainBundle] pathForResource:@"nCode01"
                                                 ofType:@"txt"];
nCode = [NSFileHandle fileHandleForReadingAtPath:path];
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top