从CSV文件中读取数据并将数据插入到Room Database中,可以按照以下步骤进行:
以下是一个示例代码:
// 实体类
@Entity(tableName = "person")
public class Person {
@PrimaryKey(autoGenerate = true)
private int id;
private String name;
private int age;
// 省略构造方法和Getter/Setter
}
// 数据访问对象
@Dao
public interface PersonDao {
@Insert
void insert(Person person);
}
// Room Database类
@Database(entities = {Person.class}, version = 1)
public abstract class AppDatabase extends RoomDatabase {
public abstract PersonDao personDao();
}
// 主代码
public class Main {
public static void main(String[] args) {
// 创建Room Database实例
AppDatabase db = Room.databaseBuilder(getApplicationContext(), AppDatabase.class, "database-name").build();
// 读取CSV文件并插入数据
try {
CSVReader reader = new CSVReader(new FileReader("data.csv"));
String[] nextLine;
while ((nextLine = reader.readNext()) != null) {
String name = nextLine[0];
int age = Integer.parseInt(nextLine[1]);
// 创建Person对象
Person person = new Person();
person.setName(name);
person.setAge(age);
// 插入数据到数据库
db.personDao().insert(person);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
这个例子假设已经引入了Room Persistence Library和CSV文件解析库。请根据实际情况进行相应的依赖管理和引入库文件。
领取专属 10元无门槛券
手把手带您无忧上云