0

ファイルに保存し、アプリの再起動時にファイルからリロードする NSStrings の NSArray があります。奇妙なことに、文字列はリロード後に括弧で囲まれます。

私は次の方法で保存します: writeToFile:atomically:

そして、次の方法で配列をロードします: arrayWithContentsOfFile:

問題は、NSString が入ると、次のようになることです。

I_am_the_good_old_string

しかし、ファイルから配列をリロードすると、次のようになります。

(

I_am_the_good_old_string

)

なぜ括弧で囲まれているのかわかりません。どんな助けでも大歓迎です。

4

2 に答える 2

2

印刷している 2 番目のオブジェクトは、NSString オブジェクト自体ではなく、1 つの文字列を含む NSArray だと思います。このメソッドを呼び出して、オブジェクトのクラスの名前を確認してください。

NSLog(@"%@",[possibleStringObject class]);
于 2013-02-04T19:13:32.847 に答える
1

括弧は配列オブジェクトです。配列を出力すると、説明したように[myarraydescription]が呼び出されます。

(obj1,
obj2,
obj3)

おそらく文字列を印刷してから、配列を印刷しています。アレイをリロードした後、文字列を出力してみてください。

NSLog(@"myString:%@", [myArray objectAtIndex:0]);
于 2013-02-04T19:18:32.640 に答える