将csv文件导入android中的Sqlite数据库



我已经成功导出了我的android应用程序数据库的csv文件。现在我想做的是通过选择浏览选项,我可以导入csv文件并用现有的数据库表替换它(如还原)。我在sqlite数据库名称成员中有一个表。

Id  == Name == Phone number
1   == Abhi == 11111111
2   == Ram  == 111111223
3   == Alex == 891273932

我想在android应用程序中将csv文件恢复到我的手机数据库中。

感谢

首先必须设置分隔符字符串,然后才能将csv文件导入到所需的表中。

这里假设分隔符为逗号(,)

.separator ","
.import your_csv_file.csv your_table_name

如果你使用.help,你可能会注意到一些有趣的东西:

sqlite> .help
...
.help                  Show this message
.import FILE TABLE     Import data from FILE into TABLE
...
.separator STRING      Change separator used by output mode and .import
...

试试这个:

FileReader file = new FileReader(fileName);
BufferedReader buffer = new BufferedReader(file);
String line = "";
String tableName ="TABLE_NAME";
String columns = "_id, name, phonenumber";
String str1 = "INSERT INTO " + tableName + " (" + columns + ") values(";
String str2 = ");";
 
db.beginTransaction(); 
while ((line = buffer.readLine()) != null) {
    StringBuilder sb = new StringBuilder(str1);
    String[] str = line.split(",");
    sb.append("'" + str[0] + "',");
    sb.append(str[1] + "',");
    sb.append(str[2] + "',");
    sb.append(str[3] + "'");
    sb.append(str[4] + "'");
    sb.append(str2);
    db.execSQL(sb.toString());
} 
db.setTransactionSuccessful(); 
db.endTransaction();

取自:将.csv文件导入Android 中的Sqlite

相关内容

  • 没有找到相关文章

最新更新