0

まず、私がまったくの初心者だと仮定してください。これはばかげているように思えるかもしれませんが、これを行う方法がわかりません。

-(BOOL)writeToFile:(NSString*)path アトミックに:(BOOL)flag; を呼び出すのを何度も見てきました。インターフェイス内で、データをファイルに書き込むことができるようにします。

これは素晴らしいことですが、実装内でそのメソッドを定義する必要があります。また、AppleDev やこれに関する他のトピックのほとんどは、私が実装の書き方を知っていると想定しているだけなので、その点ではあまり役に立ちませんでした。

これが重複した質問である場合は申し訳ありません。1週間探していましたが、何も見つかりませんでした...はい。

ので、私は持っています

@interface Objectname: NSObject

-(BOOL)writeToFile:(NSString*)path atomically:(BOOL)flag;
...

@implementation Objectname

-(BOOL)writeToFile:(NSString*)path atomically:(BOOL)flag{
//absolutely no idea what to put here???
}

私は文字列の NSMutableArray をファイルに出力する方法を文字通りどこでも探しています。私が使用している本 (私は学生なので) は簡単に見えますが、本の例では実装やインターフェイスを利用していません。 @autoreleasepool に書き込んでください。

別のメソッドで writetofile を呼び出す必要がありますか? それとも@autoreleasepoolだけですか?

やるべきだと思う

[NameofMutableArray writetofile:thePathICreatedwithFileHandle];

私は少なくとも正しい道を進んでいますか?ありがとう

4

2 に答える 2

0

カスタム クラスをディスク上で表現し、復元などを可能にしたい場合、2 つのほとんどの cocoa オプションは、キー付きアーカイバーまたはコア データを使用することです。キー付きアーカイバーはよりシンプルですが、オブジェクト間の関係をシリアル化するのははるかに困難です。仕事に適したツールを決定するのはあなた次第です...値をKVペアとして辞書に保存し、辞書を保存するなど、さらに単純になる可能性がありますが、これにはシリアル化可能な型をplistに制限する効果がありますが、文字列、数値、辞書、配列。

于 2013-10-14T19:18:34.637 に答える
0

writeToFile はすでに存在し、一部のクラス (NSData、NSString、NSDictionary、NSArray) に対して OS によって提供されます。カスタムオブジェクトのインターフェースの一部としてそのようなメソッドを持ちたい場合、簡単な方法は、そのような型になるオブジェクトのシリアル化を行い、その上で OS メソッドを使用することです (複数の方法があります: 私はお勧めしますNSCoding プロトコルについて読む必要があります)

于 2013-10-13T20:48:56.677 に答える