2011-12-08 7 views
1

私はNSMutableArrayを持っています。これは空でも、多数のpropertyListオブジェクトを持っていてもかまいません(私の場合、NSNumberオブジェクトのみ)。 xml形式でディスクに保存したいので使用しています。空のNSArrayをディスクに保存します。

// In the interface  
@property (nonatomic, retain) NSMutableArray *myArray; 

// In the implementation 
if ([self.myArray writeToFile:pathToFile atomically:YES]) 
{ 
    // Success 
} else { 
    // Failure 
} 

配列が空である場合(空の初期化NSMutableArrayの)モーメント方法を法と呼ばれるがNOを返し、操作が行われないので、古いデータが上書きされません。

ディスクに空の配列を書き込むにはどうすればよいですか?

答えて

4

実際にはself.myArrayは、「が初期化された NSMutableArray」の空ですか?私にとっては、空の配列にファイル自体を書き込むように指示しても問題ありません。メッセージはNOを返すこと

あなたが観察している行動は、あなたが全くの配列を持っていないので、それは、空でも非空でもないことを意味する、self.myArraynilを返すと一致しています。配列がなければ、メッセージを送信するものはないので、メッセージは(この場合は)NOを返します。

実際にself.myArrayが、メッセージを送信しようとしているところで、配列が空であるかどうかを必ず確認してください。あなたがあなたの質問に追加することはあなたが確認するために使用したロギングコードと出力は素晴らしいことです。

+0

コードが再実装されていて、プロパティを初期化していませんでしたが、何か問題があったと思う前に、ディスクに配列を保存することはありませんでした。 –

関連する問題