Я хочу, чтобы прочитать файл .txt, который таблица в формате TabStop, как это:JAVA: как читать очень длинные строки в TabStop delimitered txt.file
1 ABC short text
2 DEF very very long text....
3 GHI short text
4 JKL short text
Проблема в том, что не полная строка читается, когда текст очень длинный (это означает, что всего несколько КБ не являются ГБ или так ;-)). Я использую этот код, чтобы сделать чтение:
try {
InputStream fis = new FileInputStream(file.getAbsolutePath());
InputStreamReader isr = new InputStreamReader(fis, Charset.forName("ISO-8859-1"));
BufferedReader br = new BufferedReader(isr);
while ((line = br.readLine()) != null) {
String[] values = line.split("\t", -1); // don't truncate empty fields
System.out.println(values[0] + " " + values[1] + " " + values[2]);
}
}
объяснить проблему лучше: результат вышеприведенной таблицы это (что не должно быть):
1 ABC short text
2 DEF very very lo
Вы можете попробовать [этот ответ] (http://stackoverflow.com/a/13569964/3998458) –
очень долго, я имею в виду такие вещи, как несколько KB.I думаю, что он разбивается на более длинные строки, чем 255 символов. – user3776738
Вы на самом деле нападаете на OOM? Или логически, вы думаете, что на самом деле не читаете полную строку? Я пытаюсь понять, в чем проблема, когда вы говорите «Проблема в том, что не полная строка читается», вы видите ошибку? – SGM1