PLISTをデバイスに保存するための正しいファイルの場所
-
14-09-2020 - |
質問
プレストをデバイスに保存するための正しいファイルパスとは何ですか。
チュートリアル
でこれを読みましたこれはコンピュータのために機能する、デバイスのファイルの場所を知りたいです。
// write xml representation of dictionary to a file
[dictionary writeToFile:@"/Users/henrik/Sites/foo.plist" atomically:NO];
.
現在私が読んだファイルパスに書き込もうとしている
NSString *filepath = [[NSBundle mainBundle]
pathForResource:@"UserAdded" ofType:@"plist"];
userAddedQuotes = [[NSMutableArray alloc] initWithContentsOfFile:filepath];
.
次のように
[userAddedQuotes addObject:temp];
[userAddedQuotes writeToFile:filepath atomically: NO];
.
ランタイムでアレイが更新されますが、Plistに保存されません。
解決
アプリケーションバンドル内の任意のファイル(リソースディレクトリを含む)には書き込めません。ファイルを作成したい場合は、ファイルの内容に応じて、アプリケーション文書またはライブラリフォルダを作成する必要があります。例えば:
NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
.
はパスの配列を返しますが、その最初のパスはあなたのドキュメントディレクトリです。
所属していません StackOverflow