繁体   English   中英

如何将csv导入android上的sqlite并列出信息

[英]how to import csv into sqlite on android and list the information

如何将csv导入android上的sqlite并列出信息。 我是andorid的新手,一个完整的示例对于我了解它的工作原理非常有用,db hepler是我的问题,我不知道如何首先将其设置为找到的这样的代码

                InputStream is = getAssets().open("textv.csv"); 
                BufferedReader br = new BufferedReader(new InputStreamReader(is, "UTF-8"));

                String line = "";
                String tableName ="TABLE_NAME";
                String columns = "_id, name, dt1, dt2, dt3";
                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();

所以请帮忙

您是否遇到该代码段的任何问题? 您最好使用ContentValues而不是StringBuilder。

InputStream is = getAssets().open("textv.csv"); 
BufferedReader br = new BufferedReader(new InputStreamReader(is, "UTF-8"));

String line = "";
String tableName ="TABLE_NAME";
String columns = "_id, name, dt1, dt2, dt3";
ContentValues values = new ContentValues();
db.beginTransaction();
while ((line = buffer.readLine()) != null) 
{
    values.clear();
    String[] str = line.split(",");

    values.put ("_id", str[0]);
    values.put ("name", str[1]);
    values.put ("dt1", str[2]);
    values.put ("dt2", str[3]);
    values.put ("dt3", str[4]);

    db.insert (tableName, null, values);
}

db.setTransactionSuccessful();
db.endTransaction();

请注意,我尚未添加任何错误处理代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM