Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> Java

Dominando a Classe PrintStream do Java: Print, Println e Printf Explicados

Dominando a Classe PrintStream do Java

Este tutorial aprofunda a classe PrintStream do Java, cobrindo sua criação, métodos principais e exemplos práticos.

A classe PrintStream, parte do pacote java.io, estende OutputStream e é projetada para saída de texto legível por humanos em vez de bytes brutos.


Como PrintStream Funciona

Diferente de outros streams, PrintStream converte valores primitivos (int, char, etc.) em texto formatado antes de escrevê-los no destino. Ela também nunca lança IOException; em vez disso, erros são reportados via checkError().

Auto-flush é um recurso chave: o stream faz flush automaticamente quando:


Criando um PrintStream

Primeiro, importe a classe:

import java.io.PrintStream;

1. De um OutputStream existente

// Exemplo: envolve um FileOutputStream
FileOutputStream fos = new FileOutputStream("log.txt");
PrintStream ps = new PrintStream(fos, true); // true = autoFlush

Isso escreve texto formatado em log.txt com auto-flush opcional.

2. Diretamente de um nome de arquivo

PrintStream ps = new PrintStream("log.txt", true);

O construtor aceita um booleano para auto-flush. Por padrão, o stream usa a codificação de caracteres da plataforma.

3. Especificando um charset

PrintStream ps = new PrintStream("log.txt", true, StandardCharsets.UTF_8);

Usar Charset permite escolher UTF-8, UTF-16 ou qualquer codificação suportada.

Nota: Para mais detalhes sobre character sets, veja a API Java Charset.


Métodos Principais do PrintStream

print() e println()

Exemplo: Usando System.out

public class Main {
    public static void main(String[] args) {
        System.out.print("Hello World.");
    }
}

Aqui, System.out é um PrintStream pré-configurado, então seu método print() está imediatamente disponível.

Exemplo: Escrevendo em um Arquivo

import java.io.PrintStream;

public class Main {
    public static void main(String[] args) {
        try {
            PrintStream ps = new PrintStream("output.txt");
            ps.print("Este é um texto dentro do arquivo.");
            ps.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

O resultado em output.txt contém:

Este é um texto dentro do arquivo.

printf()

Imprime texto formatado usando especificadores de formato:

System.out.printf("Eu tenho %d anos", 25);

Aqui, %d é substituído pelo valor inteiro 25.

Exemplo: Usando printf() com Arquivo

import java.io.PrintStream;

public class Main {
    public static void main(String[] args) {
        try {
            PrintStream ps = new PrintStream("output.txt");
            int idade = 25;
            ps.printf("Eu tenho %d anos.", idade);
            ps.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Após execução, output.txt contém:

Eu tenho 25 anos.

Métodos Adicionais do PrintStream

Método Descrição
close() Fecha o stream e libera recursos do sistema.
checkError() Retorna true se o stream encontrou um erro.
append() Anexa a sequência de caracteres especificada ao stream.

Para detalhes completos, consulte a documentação oficial do Java PrintStream.

Java

  1. Entendendo a Palavra-chave final em Java: Variáveis, Métodos e Classes
  2. Operador instanceof em Java: Guia Completo
  3. Dominando Herança em Java: Conceitos, Tipos e Exemplos Práticos
  4. Entendendo Classes Aninhadas Estáticas em Java: Uso, Diferenças e Exemplos
  5. Dominando Classes Internas Anônimas em Java: Definição, Sintaxe e Exemplos Práticos
  6. Padrão Singleton em Java Explicado: Como Implementar e Usar com Segurança
  7. Dominando Reflection em Java: Inspecionando Classes, Métodos e Campos em Tempo de Execução
  8. Dominando Java ObjectOutputStream: Serialização, Métodos e Exemplos Práticos
  9. Dominando Java Generics – Construindo Código Reutilizável e Type-Safe
  10. Dominando Operações de Arquivo em Java com java.io – Criação, Leitura, Escrita e Exclusão