Xcode プロジェクトのリソース フォルダーに plist がありますが、物理ドライブではプロジェクトの最上位フォルダーにあります。この同じファイルから読み書きしたい。NSBundle を使用すると、正しく読み取られ、問題は発生しません。このコードを使用してファイル パスを読み取ります。
NSString *thePath = [[NSBundle mainBundle] pathForResource:@"MyFile" ofType:@"plist"];
しかし、NSBundleは書き戻しを許可していないと思うので、ファイルを書き戻そうとしたときに機能しませんでした。次のコードを使用すると、アプリケーションパスを使用してファイルが作成/更新されます
NSArray *pathArray = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDirectory, YES);
NSString * docsDirectory = [pathArray objectAtIndex:0];
NSString *filePath = [docsDirectory stringByAppendingPathComponent:@"MyFile.plist"];
しかし今のところ、内部ファイルに書き込む必要があります。それにアクセスするための解決策はありますか?また、作業ディレクトリからプロジェクト ディレクトリへのパスを指定しようとしました。それも機能しません。