私はnamesArray
と呼ばれるNSArray
を持っています。NSArraysからのデータをコアデータに挿入する方法
namesArray
に存在するすべての名前をcoredata
を使用して保存する必要があります。
これはどのように達成できますか?
'names.sqlite'
のようなデータベースをsqlite managerを使って作成する必要がありますか?
私はnamesArray
と呼ばれるNSArray
を持っています。NSArraysからのデータをコアデータに挿入する方法
namesArray
に存在するすべての名前をcoredata
を使用して保存する必要があります。
これはどのように達成できますか?
'names.sqlite'
のようなデータベースをsqlite managerを使って作成する必要がありますか?
いいえマネージャーを使用してnames.sqlite
を作成する必要はありません。例えば、HereまたはHereのように、ネット上にあるチュートリアルのいくつかを調べる必要があります。
基本的にデータモデルをvalueForKey
形式で保存する必要があります。あなたのappdelegateのインスタンスを作成する
//Coredata saving
self.theAppDel=[[UIApplication sharedApplication] delegate];
NSManagedObjectContext*context=[self.theAppDel managedObjectContext];
NSManagedObject*object=[NSEntityDescription insertNewObjectForEntityForName:@"Contacts" inManagedObjectContext:context];
NSError*error=nil;
[object setValue:[namesArray objectAtIndex:0] forKey:@"name"]; //for saving first name
1.。
2.アクセスします名前の連絡先を持つエンティティ記述を作成と仮定Managed Object Context
とManaged Object
3.。配列内の項目数のカウントでは、各オブジェクトをname
という名前の列に追加します(作成したと仮定しています)。
これは簡単な例ですが、チュートリアルを読んで、Appleのマニュアルを読む必要があります。
EDIT: Ondraに言及したように、以前のソリューションでは最後の要素のみが追加されていました。 Adding NSMutableArray in CoreDataありがとうOndra Peterka
iNoobsの答えがうまくいかないと思います。ループは値を複数回上書きします(姓のみが保存されます)。どのような場合でもチュートリアルを読むのは良い考えです。 たぶんあなたが探している答えはここにある:Saving an NSMutableArray to Core Data
も...私はあなたが明示的に「コアデータに保存する」と述べたが、念のために知っている - あなたはNSUserDefaults
のように、異なるストレージを使用することができます。
[[NSUserDefaults standardUserDefaults] setObject:namesArray forKey:@"namesArray"];
と使用して、後でそれを取得:コースNSUserDefaultsの
myArray= [[NSMutableArray alloc] initWithArray:[[NSUserDefaults standardUserDefaults] objectForKey:@"namesArray"]];
だけ少量のデータのために使用されるようにメンターされています。
幸運;)