assets 사전 insert DB

Posted by PeEn
2019. 12. 9. 00:31 Programing/Android
     String sql = "";
     	//DB 존재하면 삭제
     	try {
            db.execSQL("drop table if exists '" + DB_NAME + "'");
        } catch (Exception e) {
            Log.e("MYCAT", "DROP SQL ERROR " + e);
        }

		//DB 생성
        try {
            sql = "CREATE TABLE `" + TABLE_NAME + "` (" +
                    "`_no` TEXT," +
                    "`name` TEXT," +
                    "`jang` TEXT," +
                    "`jeol` TEXT," +
                    "`content` TEXT);";
            Log.e("MYCAT", sql);
            db.execSQL(sql);
        } catch (Exception e) {
            Log.e("MYCAT", "SQL : " + sql + "CREATE ERROR " + e);
        }

		//이하 assets 폴더에 넣은 파일 가져와 insert
        try {
            AssetManager assetManager = context.getAssets();
            BufferedReader reader = new BufferedReader(new InputStreamReader(assetManager.open("bibleInsert.dat"), "utf-8"));
            String buf = "";
            while ((buf = reader.readLine()) != null) {
                String[] tokens = buf.split("\\|");	//구분자
                if (tokens != null && tokens.length > 4) {

                        sql = "INSERT INTO `" + TABLE_NAME + "` (`_no`, `name`, `jang`, `jeol`, `content`) VALUES('" +
                            tokens[0] +
                            "','" + tokens[1] + "'" +
                            ",'" + tokens[2] +
                            "','" + tokens[3] +
                            "','"+tokens[4]+
                            "');";
                    Log.e("MYTAG", "INSERT BASE " + sql);
                    Log.v("MYCAT","토큰 "+tokens[0]);
                    db.execSQL(sql);
                }
            }
            reader.close();
        } catch (Exception e) {
            Log.e("MYCAT", "SQL : " + sql + "TABLE INSERT BASE ERROR " + e);
        }

 

assets에 저장한 형식

1|홍길동|23|2002|오징어심리학
.
.
.