Java BufferedWriter Write метод - PullRequest
       9

Java BufferedWriter Write метод

3 голосов
/ 22 ноября 2011

Я создаю файл CSV, используя BufferedWriter из объекта ResultSet. Несколько столбцов базы данных содержат значения null.

Когда я звоню obj.write(rs.get()), я получаю NullPointerException, когда вывод null. Есть ли другой класс, кроме BufferedWriter, который я могу использовать, чтобы преодолеть это?

Я не хочу проверять условие null для столбцов базы данных, так как столбцов много. Я новичок в Java и попытался найти решение, но ничего не смог найти.

Ответы [ 3 ]

4 голосов
/ 22 ноября 2011

Вы можете использовать более умный буферизованный писатель, который выполняет проверку недействительности. Вот пример кода, который, возможно, потребуется немного подправить, в настоящее время у меня нет доступного компилятора Java.

public class MyBufferedWriter extends BufferedWriter {
    public void write(String str) {
        if (str==null)
            str="";
        super.write(str);
    }
}
0 голосов
/ 17 ноября 2017

Просто solendil код, исправленный так, что он компилируется, и немного отформатированный:

package mypackage;

import java.io.BufferedWriter;
import java.io.IOException;
import java.io.Writer;

public class MyBufferedWriter extends BufferedWriter {

    public MyBufferedWriter(Writer out) {
        super(out);
    }

    @Override
    public void write(String str) throws IOException {
        if (str == null)
            str = "";
        super.write(str);
    }
}
0 голосов
/ 03 мая 2012

Я знаю, что это старый вопрос, но все равно есть предложение: используйте OpenCSV .Класс, который вы хотите использовать: au.com.bytecode.opencsv.CSVWriter

...