2

NSDictionary内にNSURLがあります。これは次のようになります。

assets-library://asset/asset.JPG?id=1000000001&ext=JPG

このNSURLはUIImagePickerControllerReferenceURLからのものです。このオブジェクトがない場合、NSDictionaryは次のコードを使用して保存します。

BOOL success = [dictionary writeToFile:vaultPath atomically:YES];

しかし、オブジェクトをNSDictionaryに追加すると、writeToFile行はNOを返します。

writeToFileとNSURLに問題がありますか、それともこの特定のURLが原因ですか?

編集:さらに調べてみると、このNSURLを代わりにNSStringとして同じデータで保存すると、失敗します。

4

1 に答える 1

7

のドキュメントからwriteToFile:atomically:

このメソッドは、ファイルを書き出す前に、含まれているすべてのオブジェクトがプロパティリストオブジェクト(NSData、NSDate、NSNumber、NSString、NSArray、またはNSDictionaryのインスタンス)であることを再帰的に検証し、すべてのオブジェクトがプロパティリストオブジェクトでない場合はNOを返します。結果のファイルは有効なプロパティリストではありません。

于 2011-08-29T20:27:27.113 に答える