質問

プレストをデバイスに保存するための正しいファイルパスとは何ですか。

チュートリアル

でこれを読みました

これはコンピュータのために機能する、デバイスのファイルの場所を知りたいです。

// 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);
.

はパスの配列を返しますが、その最初のパスはあなたのドキュメントディレクトリです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top