2011-02-16 6 views
0

.net webserverから情報を取得していて、NSuserdefaultsに保存しています。配列内の新しいデータで以前のデータを置換する方法

私のコードは、私はこれら5が配列され、ここで休閑コード

agentids = [[NSUserDefaults standardUserDefaults] arrayForKey:@"agentid"]; 
    loanofficerid = [[NSUserDefaults standardUserDefaults] arrayForKey:@"loanoff_id"]; 
    agentnames = [[NSUserDefaults standardUserDefaults] arrayForKey:@"agentnames"]; 
    agentemails = [[NSUserDefaults standardUserDefaults] arrayForKey:@"agentemail"]; 
    agentphone = [[NSUserDefaults standardUserDefaults] arrayForKey:@"agentphone"]; 

を使用し、それらを得るために

[[NSUserDefaults standardUserDefaults] setObject:resultData_agent forKey:@"agentid"]; 
    [[NSUserDefaults standardUserDefaults] setObject:array1 forKey:@"loanoff_id"]; 
    [[NSUserDefaults standardUserDefaults] setObject:array2 forKey:@"agentnames"]; 
    [[NSUserDefaults standardUserDefaults] setObject:array3 forKey:@"agentemail"]; 
    [[NSUserDefaults standardUserDefaults] setObject:array4 forKey:@"agentphone"]; 

であることのために。

私は5分ごとにこのプロセスを繰り返す必要があります。

ここで私は問題のデータは、既存のデータに追加された配列に置き換えられていません。例えばのための

:私はこのプロセスを繰り返したときに最初に私は101を持っているagetidsで、それは101101

を示したが、私は既存のもので、これらの値に置き換える必要があります。

私はNSMutable配列を使用してみたが、それは私が行ってできるかagentids = [[NSUserDefaults standardUserDefaults] arrayForKey:@"agentid"];

で警告を示すいずれかが私を助けてくださいすることができます。

ありがとうございます。

答えて

4

NSArrayをNSUserDefaultから取得すると、なぜ警告が表示されるのでしょうか。

使用この、

agentids = [[[NSUserDefaults standardUserDefaults] arrayForKey:@"agentid"] mutableCopy]; 

、あなたは、このためのthis.use​​方法から、前のオブジェクトを削除する必要があり、新しいデータを挿入する前に。

+0

はい、私はこれを試して、私はすべてのオブジェクトの配列を削除しますが、それでも私は同じ問題を抱えている、私はNSUserDefaultsをクリアする必要があると思う、私はあなたが私を助けてください。 – MaheshBabu

+1

NSUserDefultからデータを削除するにはOKです。この[standardUserDefaults setObject:nil forKey:@ "agentid"]; \t \t [standardUserDefaults synchronize]; – Ishu

+0

ありがとうございますIshu、私は私の問題を解決する – MaheshBabu

関連する問題