При попытке прочитать данные из базы данных, я получаю эту ошибку:java.lang.IllegalStateException: Не удалось прочитать строку 4, столбец 0 из CursorWindow
java.lang.IllegalStateException: Couldn't read row 4, col 0 from CursorWindow. Make sure the Cursor is initialized correctly before accessing data from it.
Количество строк в курсоре являются 24, код дает исключение на номер строки 22. кода я использую следующее:
while (c.moveToNext()) {
SomeData someData = new SomeData();
someData.setQuestion(c.getString(0)); //Exception is coming in this line
someData.setOption1(c.getString(1));
someData.setOption2(c.getString(2));
someData.setOption3(c.getString(3));
someData.setOption4(c.getString(4));
someData.setAnswer(c.getString(5));
outMap.put(c.getString(6), someData);
}
значение столбца (строки) для записи 22-й строки имеет длину 699059 символов. Я подозреваю, что ошибка является результатом большого значения String.
Любая идея, как исправить эту ошибку?
Я считаю, что предел составляет 2 МБ. [Проверить это сообщение SO] (http://stackoverflow.com/questions/21432556/android-java-lang-illegalstateexception-couldnt-read-row-0-col-0-from-cursorw) – gtgaxiola