Java Language
BufferedWriter
Szukaj…
Składnia
- nowy BufferedWriter (Writer); // Domyślny konstruktor
- BufferedWriter.write (int c); // Zapisuje pojedynczy znak
- BufferedWriter.write (String str); // Zapisuje ciąg
- BufferedWriter.newLine (); // Zapisuje separator linii
- BufferedWriter.close (); // Zamyka BufferedWriter
Uwagi
- Jeśli spróbujesz pisać z
BufferedWriter(używającBufferedWriter.write()) po zamknięciuBufferedWriter(używającBufferedWriter.close()),IOException. - Konstruktor
BufferedWriter(Writer)NIEIOException. Jednak konstruktorFileWriter(File)zgłaszaFileNotFoundException, który rozszerzaIOException. Tak więc przechwytywanieIOExceptionspowoduje również przechwycenieFileNotFoundException, dlatego nigdy nie jest potrzebna druga instrukcja catch, chyba że planujesz zrobić coś innego zFileNotFoundException.
Napisz wiersz tekstu do pliku
Ten kod zapisuje ciąg do pliku. Ważne jest, aby zamknąć program do pisania, więc odbywa się to w bloku finally .
public void writeLineToFile(String str) throws IOException {
File file = new File("file.txt");
BufferedWriter bw = null;
try {
bw = new BufferedWriter(new FileWriter(file));
bw.write(str);
} finally {
if (bw != null) {
bw.close();
}
}
}
Zauważ też, że write(String s) nie umieszcza znaku nowej linii po napisaniu łańcucha. Aby to newLine() użyj metody newLine() .
Java SE 7
Java 7 dodaje pakiet java.nio.file i try-with-resources :
public void writeLineToFile(String str) throws IOException {
Path path = Paths.get("file.txt");
try (BufferedWriter bw = Files.newBufferedWriter(path)) {
bw.write(str);
}
}
Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow