Java BufferredReader

Java BufferredReader
A classe BufferReader de Java usa buffers de caracteres para garantir uma eficiência ao ler o texto de um fluxo de entrada de caracteres. Normalmente, cada consulta de leitura feita para um leitor desencadeia uma solicitação de leitura semelhante a ser enviada ao personagem ou fluxo de bytes embaixo. Portanto, é aconselhável usar um leitor de buffers para incluir qualquer leitor que possa ter operações de leitura caras, que incluem FileReaders e InputStreamReaders. Ajuda a facilitar o desempenho. É descendente da aula do leitor.

Exemplo # 1: Usando um BufferredReader com um fluxo em Java no Ubuntu 20.04

Um fluxo de entrada pode ser usado como fonte para um leitor de buffers. Para ler dados do sistema.In, vamos encapsular o InputStreamReader. As informações que digitamos no teclado serão lidas por ele.

Para o programa Java acima, importamos o pacote “Java.io.BufferredReader ”, juntamente com outros pacotes Java. Em seguida, criamos a classe Java Public como "Test1" e construímos o método principal dentro dela que também lança ioexecção se algo der errado no método principal. Aqui, declaramos a variável "MyStream" da classe "InputStreamReader" e atribuímos o "sistema.em ”que nos permite ler o fluxo de entrada do usuário. Em seguida, criamos o BufferredReader na variável "MyBufferedReader" e passamos "MyStream" como um parâmetro. A variável "line" leia o fluxo de entrada à medida que definimos o método da LALLING com o "MyBufferedReader". Exibimos o fluxo de entrada da palavra -chave através do sistema.fora.Método de impressão e fechou o BufferredReader.

O BufferredReader lê o fluxo de entrada no seguinte console Java.

Exemplo # 2: Usando um BufferredReader para ler arquivos linha por linha em java no Ubuntu 20.04

A classe BufferredReader oferece muitos métodos para leitura de dados. Uma linha é lida de cada vez pela função readLine (). Este método produz nulo se o fluxo termina. Para ler um arquivo, vamos empregar este método:

Para o programa Java, demos o caminho do arquivo “Arquivo.txt ”, que é lido pela classe FileReader. O BufferEredReader leu os dados deste arquivo que possui algumas linhas de texto. Para isso, criamos a variável "BufferredReader" e invocamos o BufferredReader, que toma o "FileReader" como um argumento. Empregamos o loop while, que pedalou sobre cada linha no arquivo fornecido e lido pelo método BufferErader chamado ReadLine (). No final, o BufferredReader está fechado.

Você pode ver o método bufferreder readline () leia a linha de conteúdo de arquivo por linha e exibi -lo na saída.

Exemplo # 3: Usando um BufferredReader para ler um personagem de um arquivo em Java no Ubuntu 20.04

O método read () da classe bufferreder () nos permite ler apenas um caractere de cada vez. A leitura do char é devolvida por este procedimento como um número inteiro. Se abordarmos o fim do fluxo, a função retorna -1. A operação desta técnica é mostrada no código abaixo. Temos a linha "Este é um arquivo de texto" em nosso arquivo.

O programa Java é o mesmo que a ilustração acima mencionada. Aqui, fornecemos o nome do arquivo “arquivo.txt "para a variável" nome do arquivo ". O "leitor" lê o arquivo e, em seguida, o "leitor" é passado para o BufferredReader. O BufferEredReader chamou o método read () dentro do while loop e retornou o personagem um por um no arquivo.

Os caracteres do arquivo são buscados um por um pelo método read () do Java BufferReader.

Exemplo # 4: Usando um BufferredReader para ler vários caracteres em Java no Ubuntu 20.04

Além disso, muitos caracteres podem ser lidos simultaneamente usando o método read (). Uma matriz de char que manterá os dados deve ser fornecida. Além disso, devemos especificar um deslocamento para denotar o índice de partida da matriz de char. Este índice serve como ponto de partida para os dados salvos. Também é necessário declarar quantos personagens podem ser lidos simultaneamente.

Primeiro, demos o nome do arquivo e depois criamos o BufferErader. Depois disso, estabelecemos a matriz de char [] que leva seis caracteres por vez. Dentro do “arquivo.txt ”, temos a frase de entrada“ texto ”. A função read () do BufferredReader será usada para adquirir todos os personagens do arquivo. Para o método read (), passamos o índice inicial e o índice de final da matriz de caracteres para que o método read () leia seis caracteres do arquivo.

Como temos uma palavra "texto" dentro do nosso arquivo, o método read () gera todos os caracteres de uma só vez do arquivo.

Exemplo # 5: Usando um BufferredReader para pular personagens em Java no Ubuntu 20.04

Uma função Skip () está disponível na classe BufferredReader, que pode ser usada para excluir caracteres do texto. O parâmetro de tipo é bastante longo. Temos a linha "meu arquivo de texto" em nosso arquivo. Devemos pular um personagem depois de ler cada um.

Criamos o BufferredReader e passamos a variável FileReader, que tem o caminho do arquivo. Então, definimos o objeto "Chread". Também definimos o método StringBuilder para uma sequência mutável dos caracteres na variável "str_b". Utilizamos o loop while que é chamado de método read () que leu o personagem. À medida que os personagens são lidos um por um, temos o método pulado que pula o próximo personagem depois de ler o único personagem.

Depois que o personagem é ignorado da linha fornecida, a saída é obtida assim:

Exemplo # 6: Usando um BufferredReader para Mark e Rest em Java no Ubuntu 20.04

Para marcar um caractere específico, a classe BufferredReader tem a função Mark (). Sempre que queremos no futuro, podemos usar o método RESET () para retornar ao personagem designado. Um número inteiro que representa o número de bytes que podem ser lidos no total antes que a marca seja considerada incorreta é a entrada para o método Mark ().

Temos a palavra "li*nux" presente em nosso arquivo. Especificamos o arquivo “arquivo.txt ”para o FileReader. Em seguida, construímos o leitor de buffers onde o FileReader é passado. Todos os personagens serão lidos, mas apenas leremos aqueles com um asterisco. Depois disso, usaremos a redefinição para retornar a este ponto (). Para isso, definimos a matriz com o índice especificado para cada caractere. Após os dois índices da matriz, marcamos o método da marca Asterisk y e o pulamos pelo método de pular. O método de restante levará de volta ao personagem marcado a qualquer momento.

O asterisco marcado no arquivo é ignorado pela implementação acima do código.

Conclusão

A classe BufferredReader é usada para ler dados de fontes como arquivos ou fluxos, usando um buffer que minimiza as operações de E/S, aprimora o desempenho de outros leitores. Muitas técnicas práticas para ler dados estão disponíveis na classe BufferErader. Uma linha individual pode ser lida usando a função readLine (). Você pode ler um ou mais caracteres usando o método read ().