Java oferece uma gama de classes para operações de entrada e saída. Com a classe Scanner , programas Java pode ler e processar o conteúdo de arquivos externos. Programas precisa importar algumas bibliotecas para fazer uso da funcionalidade fornecida pela classe Scanner . Estas bibliotecas oferecem programas com a capacidade de instanciar um grupo de objetos capazes de processar as operações de entrada. Uma vez que essas tarefas de configuração executar , o programa pode ler o conteúdo do arquivo . Recursos
Para fazer uso da classe Scanner , um programa Java deve importar dois conjuntos de bibliotecas de linguagem. Os programas podem incluir as seguintes instruções de importação , na parte superior da declaração da classe em que o processamento de entrada ocorrerá: import java.io. *; import java.util.Scanner ;
Além da classe Scanner em si , o programa precisa de acesso a outras classes de entrada para o gerenciamento de uso de dados externos. Se um programa tenta usar a classe Scanner sem estas declarações de importação , o compilador irá alertar o programador a erros.
Objetos
programas Java criar um conjunto de objetos de entrada a realização de operações de digitalização . O seguinte código de exemplo demonstra a criação de um objeto FileReader , fornecendo a localização eo nome do arquivo externo a ser digitalizada : FileReader ler = new FileReader ( " mydata.txt ");
O parâmetro para o método construtor FileReader deve refletir a localização do arquivo de dados , bem como o seu nome e extensão. O código a seguir demonstra passando o objeto FileReader instância para o método construtor da classe BufferedReader : BufferedReader lustre = new BufferedReader (leitura) ;
A classe Scanner pode então tomar esta instância do objeto como parâmetro para o seu próprio método construtor , da seguinte forma: varredura do scanner = new Scanner (lustre );
o programa agora tem a capacidade de digitalizar um arquivo de entrada
Precauções
< . p> Se os programadores utilizam uma tentativa Ambiente de Desenvolvimento Integrado para instanciar as classes de entrada de arquivo , o IDE irá exibir avisos , porque o código não for protegido contra erros de entrada . Para evitar esses erros de compilação e proteger o programa contra as exceções de entrada , o programador pode incluir o código de instanciação de objetos dentro de um bloco try, da seguinte forma: try {//código de instanciação aqui }
Um bloco catch pode seguir este código , especificando o que o programa deve fazer se uma exceção de entrada é lançado , como segue: catch ( catch ( IOException ioExc ) { System.out.println ( ioExc.getMessage ()); }
Todo o código de varredura pode executar dentro do bloco try .
processo de entrada
o processo de digitalização em Java geralmente envolve um loop while. Isso permite que o programa para percorrer o conteúdo do arquivo, processamento . lo em pedaços o código a seguir demonstra o esboço de um loop while para este processo : while ( scan.hasNext () ) {//varredura aqui }
dentro do loop while , o programa pode digitalizar o conteúdo do arquivo . usando uma variedade de métodos de classe o código a seguir demonstra a digitalização do arquivo em bytes : . byte thisByte = scan.nextByte ();
Este código pode ser executado dentro do loop while o código a seguir , colocado após o loop while , fecha o objeto Scanner quando a conclusão da digitalização : scan.close ();