Para realizar operações de I/O com base em caracteres, o Java fornece uma hierarquia própria de fluxos baseados em caracteres, com classes abstratas como Reader e Writer. Essas classes permitem a leitura e escrita diretamente de caracteres, sendo mais adequadas para dados de texto do que os fluxos de bytes. Os métodos principais dessas classes lidam com operações de leitura e escrita e podem lançar IOException em caso de erro.
Estrutura de Fluxos de Caracteres
Classes Abstratas Principais:
Essas classes formam a estrutura mínima de operações de I/O para fluxos de caracteres, com métodos aplicáveis a todas as subclasses.
Entrada do Console com Fluxos de Caracteres
Para programas internacionalizados ou que manipulam texto, é preferível ler caracteres do console usando fluxos de caracteres. Como System.in é um fluxo de bytes, ele precisa ser adaptado para fluxos de caracteres.
Para isso, usamos:
Exemplo de Leitura de Entrada do Console
Para ler a entrada do console com BufferedReader, primeiramente, convertemos System.in em um fluxo de caracteres usando InputStreamReader:
import java.io.*; public class ConsoleReaderExample { public static void main(String args[]) { try (BufferedReader reader = new BufferedReader(new InputStreamReader(System.in))) { System.out.print("Digite uma linha de texto: "); String linha = reader.readLine(); System.out.println("Você digitou: " linha); } catch(IOException e) { System.out.println("Erro de entrada/saída: " e); } } }
Explicação do Código
Vantagens dos Fluxos de Caracteres
Esses fluxos de caracteres facilitam o tratamento de textos e são ideais para entrada de dados e manipulação de arquivos em que caracteres e texto são o foco principal.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3