У меня есть довольно большой набор данных от клиента, который находится в csv, и мне нужно, чтобы он был преобразован в sqlite на Android. Поэтому у меня есть метод, который я написал для этого -Java/Android CSV to SQLite техническая проблема
db.beginTransaction();
while ((line = bufRdr.readLine()) != null) {
try {
insertValues = line.split(",");
if (flag_is_header) {
row = this.insertRow(insertValues[0], insertValues[1], insertValues[2], insertValues[3], insertValues[4]);
} else {
flag_is_header = true; //so it skips the first line
}
} catch (Exception e) {
Log.e(TAG,"row# "+row+" error");
}
}
db.setTransactionSuccessful();
db.endTransaction();
и он отлично работает. 9k строк, вставленных менее чем за 5 секунд.
Проблема в том, что некоторые данные имеют разрывы строк внутри ячеек. т.е. это -
Steps needed
1 .....
2 .....
3 .....
может быть значение одной ячейки, так что, когда мой цикл попадает разрывы строк (в клетке) он считает, что новая строка будет вставлена и ломает код.
Есть ли другой способ импортировать данные, а не использовать разрывы строк, или я должен делать что-то еще полностью?
Благодарим за помощь.
ps. Я не могу предварительно заполнить базу данных и отправить ее по логистическим причинам.
я люблю его. есть ли способ преуспеть сделать это? – Shmuel
см. Мой отредактированный ответ. –
я вижу. Вы имеете в виду добавление колонки в конце с помощью ""? или есть лучший способ сделать это? – Shmuel