簡體   English   中英

android領域進口csv與多對多關系

[英]android realm inport csv with many to many relationship

我用兩個對象創建一個Android應用

class Dog extends RealmObject {
    int id;
    String name;
}

class Person extends RealmObject {
    int id;
    String name;
    RealmList<Dog> dogs;
}

我想從兩個csv文件導入數據,如下所示

Dog.csv
id,person_id,姓名
1,1,帕格
2,1,咕
3 2高

Person.csv
身份證,姓名
1,A先生
2,B女士

這意味着有兩個人分別稱為A先生和B女士。A先生有兩只狗叫Pug和Goo。 B太太養了一只叫高的狗。

如何導入數據並獲取包含正確數據的狗列表?

realm.executeTransaction(new Realm.Transaction() {
    @Override
    public void execute(Realm realm) {
        List<Person> persons = readPersonsFromCsv();
        realm.insertOrUpdate(persons);
        List<Dog> dogs = readDogsFromCsv();
        for(Dog dog : dogs) {
            Dog managedDog = realm.copyToRealmOrUpdate(dog);
            int personId = dog.getPersonId();
            Person person = realm.where(Person.class).equalTo("id", personId).findFirst();
            if(person != null) {
                person.getDogs().add(managedDog);
            }
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM