English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Neste tutorial, vamos aprender através de exemplos a classe Java PrintStream e seus métodos print() e printf().
A classe PrintStream do pacote java.io pode ser usada para escrever dados de saída em formato legível (texto) em vez de bytes.
Ele herdou a classe abstrata OutputStream.
Diferente dos outros fluxos de saída, o PrintStream converte dados originais (inteiros, caracteres) em formato de texto em vez de bytes. Em seguida, ele escreve dados formatados no fluxo de saída.
E a classe PrintStream não lança nenhuma entrada/Exceção de saída. Em vez disso, precisamos usar o método checkError() para encontrar quaisquer erros.
Atenção:A classe PrintStream também possui a função de escoamento automático. Isso significa que ela forçará o fluxo de saída a escrever todos os dados no destino nas seguintes situações:
Se o caractere de nova linha \n for escrito no fluxo de impressão
Se o método println() for chamado
Se escrevermos um array de bytes no fluxo de impressão
Para criar um PrintStream,我们必须 primeiro importar o pacote java.io.PrintStream. Após a importação do pacote, podemos criar o fluxo de impressão aqui.
1.usando outro fluxo de saída
//Criar um FileOutputStream FileOutputStream file = new FileOutputStream(String file); //Criar um PrintStream PrintStream output = new PrintStream(file, autoFlush);
);
Já criamos um fluxo de impressão que escreve dados formatados no arquivo representado por FileOutputStream
autoFlush é um parâmetro booleano opcional, usado para especificar se deve ser executado o escoamento automático
2.usando o nome do arquivo
//Criar um PrintStream PrintStream output = new PrintStream(String file, boolean autoFlush);
);
Criamos um fluxo de impressão que escreve dados formatados no arquivo especificado
autoFlush é um parâmetro booleano opcional, usado para especificar se deve ser executado o escoamento automático
Atenção:Nesses dois casos, o PrintStream usa alguns códigos de caracteres padrão para escrever dados no arquivo. Mas, também podemos especificar o código de caracteres (UTF8ou UTF16)。
//Usar uma certaina codificação de caracteres para criar um PrintStream PrintStream output = new PrintStream(String file, boolean autoFlush, Charset cs);
在这里,我们使用Charset该类来指定字符编码。
Métodos da PrintStream
método print() - print()
Imprimir dados especificados no fluxo de saída - println()
class Main { public static void main(String[] args) { Exemplo Atenção a esta linha, } }
String data = "Olá Mundo.";
Resultados de saída
Olá Mundo.
No exemplo acima, ainda não criamos o fluxo de impressão. Mas podemos usar o método print() da classe PrintStream.
Você pode se perguntar como isso é possível. Bem, deixe-me explicar o que acontece aqui.
Atenção a esta linha,
);
System.out.print(data);/System é responsável por executar entrada padrão
classe final para operações de saída
out é uma variável de classe do tipo PrintStream declarada na classe System
import java.io.PrintStream; class Main { public static void main(String[] args) { Exemplo: método print() da classe PrintStream try { PrintStream output = new PrintStream("output.txt"); String data = "Este é um texto dentro do arquivo."; output.close(); } catch(Exception e) { e.getStackTrace(); } } }
output.print(data);output.txtNo exemplo acima, criamos um fluxo de impressão chamado output. O fluxo de impressão com
PrintStream output = new PrintStream("output.txt");
ligação de arquivo.
Aqui, quando executamos o programaoutput.txtO arquivo será preenchido com o seguinte conteúdo.
Para imprimir dados no arquivo, usamos o método print().
método printf()2printf() método pode ser usado para imprimir strings formatadas. Ele contém
um parâmetro: a string formatada e os parâmetros. Por exemplo, 25printf("Eu sou %d anos",
);
aqui, - Eu tenho %d anos
É uma string formatada
25%d é um dado inteiro na string formatada
É um parâmetro
Portanto, uma string formatada inclui texto e dados. Além disso, os parâmetros substituem os dados na string formatada.%d substituído por 25.
import java.io.PrintStream; class Main { public static void main(String[] args) { try { PrintStream output = new PrintStream("output.txt"); int age = 25; output.printf("Eu sou %d anos velho.", age); output.close(); } catch(Exception e) { e.getStackTrace(); } } }
No exemplo acima, criamos um fluxo de impressão chamado output. O fluxo de impressão é semelhante ao arquivooutput.txtLink.
PrintStream output = new PrintStream("output.txt");
Para imprimir o texto formatado no arquivo, usamos o método printf().
Aqui, quando executamos o programaoutput.txtO arquivo será preenchido com o seguinte conteúdo.
Eu sou 25 anos velho.
Método | Descrição do Conteúdo |
---|---|
close() | Fechar o fluxo de impressão |
checkError() | Verificar se há erros no fluxo e retornar um resultado booleano |
append() | Adicionar os dados especificados ao fluxo |