Hallo,
ich muss eine CSV-Datei mit dem Encoding UTF-8 erstellen.
Hierfür muss ich OutputStreamWriter verwenden.
In der Java-API wird zum Einen empfohlen einen OutputStreamWriter in einem BufferedWriter zu kapseln, damit nicht bei jedem Methodenaufruf die Konvertierung durchgeführt werden und zum Anderen wird empfohlen nicht direkt in einen FileWriter bzw. FileOutputStream zu schreiben sondern die zu schreibenden Daten zu puffern.
Welche Kombination an Writer- und Stream-Implementierungen (Vorschlag A oder Vorschlag B) ist denn für meinen Anwendungsfall sinnvoller?
Vorschlag A:
Vorschlag B:
ich muss eine CSV-Datei mit dem Encoding UTF-8 erstellen.
Hierfür muss ich OutputStreamWriter verwenden.
In der Java-API wird zum Einen empfohlen einen OutputStreamWriter in einem BufferedWriter zu kapseln, damit nicht bei jedem Methodenaufruf die Konvertierung durchgeführt werden und zum Anderen wird empfohlen nicht direkt in einen FileWriter bzw. FileOutputStream zu schreiben sondern die zu schreibenden Daten zu puffern.
Welche Kombination an Writer- und Stream-Implementierungen (Vorschlag A oder Vorschlag B) ist denn für meinen Anwendungsfall sinnvoller?
Vorschlag A:
Code:
final FileOutputStream fileOutputStream = new FileOutputStream(file);
final OutputStreamWriter outputStreamWriter = new OutputStreamWriter(fileOutputStream, "UTF-8");
final BufferedWriter bufferedWriter = new BufferedWriter(outputStreamWriter);
Vorschlag B:
Code:
final FileOutputStream fileOutputStream = new FileOutputStream(file);
final BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(fileOutputStream);
final OutputStreamWriter outputStreamWriter = new OutputStreamWriter(bufferedOutputStream, "UTF-8");
final BufferedWriter bufferedWriter = new BufferedWriter(outputStreamWriter);