Classe Java FileWriter
Classe Java FileWriter
Neste tutorial, aprenderemos sobre o Java FileWriter e seus métodos com a ajuda de exemplos.
O FileWriter
classe do java.io
pacote pode ser usado para gravar dados (em caracteres) em arquivos.
Ele estende o OutputStreamWriter
classe.
Antes de saber mais sobre FileWriter
, certifique-se de conhecer o Arquivo Java.
Criar um FileWriter
Para criar um gravador de arquivos, devemos importar o
Java.io.FileWriter
pacote primeiro. Depois de importar o pacote, aqui está como podemos criar o gravador de arquivos. 1. Usando o nome do arquivo
FileWriter output = new FileWriter(String name);
Aqui, criamos um gravador de arquivo que será vinculado ao arquivo especificado pelo nome .
2. Usando um objeto do arquivo
FileWriter input = new FileWriter(File fileObj);
Aqui, criamos um gravador de arquivos que será vinculado ao arquivo especificado pelo objeto do arquivo.
No exemplo acima, os dados são armazenados usando alguma codificação de caracteres padrão.
No entanto, desde o Java 11 podemos especificar o tipo de codificação de caracteres (UTF8 ou UTF16 ) também.
FileWriter input = new FileWriter(String file, Charset cs);
Aqui, usamos o
Charset
class para especificar a codificação de caracteres do gravador de arquivos. Métodos do FileWriter
O
FileWriter
classe fornece implementações para diferentes métodos presentes no Writer
classe. Método write()
write()
- escreve um único caractere para o escritorwrite(char[] array)
- escreve os caracteres do array especificado para o escritorwrite(String data)
- escreve a string especificada para o escritor
Exemplo:FileWriter para gravar dados em um arquivo
import java.io.FileWriter;
public class Main {
public static void main(String args[]) {
String data = "This is the data in the output file";
try {
// Creates a FileWriter
FileWriter output = new FileWriter("output.txt");
// Writes the string to the file
output.write(data);
// Closes the writer
output.close();
}
catch (Exception e) {
e.getStackTrace();
}
}
}
No exemplo acima, criamos um gravador de arquivos chamado output . O leitor de saída está vinculado ao output.txt Arquivo.
FileWriter output = new FileWriter("output.txt");
Para gravar dados no arquivo, usamos o
write()
método. Aqui, quando executamos o programa, o output.txt arquivo é preenchido com o seguinte conteúdo.
This is a line of text inside the file.
Método getEncoding()
O
getEncoding()
pode ser usado para obter o tipo de codificação usado para gravar dados. Por exemplo,
import java.io.FileWriter;
import java.nio.charset.Charset;
class Main {
public static void main(String[] args) {
String file = "output.txt";
try {
// Creates a FileReader with default encoding
FileWriter output1 = new FileWriter(file);
// Creates a FileReader specifying the encoding
FileWriter output2 = new FileWriter(file, Charset.forName("UTF8"));
// Returns the character encoding of the reader
System.out.println("Character encoding of output1: " + output1.getEncoding());
System.out.println("Character encoding of output2: " + output2.getEncoding());
// Closes the reader
output1.close();
output2.close();
}
catch(Exception e) {
e.getStackTrace();
}
}
}
Saída
The character encoding of output1: Cp1252 The character encoding of output2: UTF8
No exemplo acima, criamos 2 gravadores de arquivos chamados output1 e saída2 .
- saída1 não especifica a codificação de caracteres. Daí o
getEncoding()
retorna a codificação de caracteres padrão. - saída2 especifica a codificação de caracteres, UTF8 . Daí o
getEncoding()
retorna a codificação de caracteres especificada.
Observação :Usamos o
Charset.forName()
método para especificar o tipo de codificação de caracteres. Para saber mais, visite Java Charset (documentação oficial do Java). método close()
Para fechar o gravador de arquivos, podemos usar o
close()
método. Uma vez que o close()
for chamado, não podemos usar o gravador para gravar os dados. Outros métodos do FileWriter
Método | Descrição |
---|---|
flush() | força a gravação de todos os dados presentes no gravador no destino correspondente |
append() | insere o caractere especificado para o escritor atual |
Para saber mais, visite Java FileWriter (documentação oficial do Java).
Java