Vamos a classe Scanner.
Antes do Java 5 para ler um console ou até mesmo um arquivo precisavamos usar a classe FileReader:
FileReader reader = new FileReader(file);Nela passamos uma Arquivo para ela usando a classe File:
File file = new File("/home/rogerio/Desktop/file.txt");Ao retornar o conteúdo do arquivo da Classe FileReader, passamos esse conteúdo para a Classe BufferedReader, com isso conseguimos manipula-lá
BufferedReader in = new BufferedReader(reader);Somente com o BufferedReader, conseguimos manipular essa String, veja no código completo:
public class ReaderFile { public static void main(String arg[]) { try { File file = new File("/home/rogerio/Desktop/file.txt"); FileReader reader = new FileReader(file); BufferedReader in = new BufferedReader(reader); String string; while ((string = in.readLine()) != null) { System.out.println(string); } in.close(); } catch (IOException e) { e.printStackTrace(); } } }Mas podemos usar esse mesmo exemplo de leitura usando a Classe Scanner, isso simplifica bem a leitura do arquivo. Para usá-la precisamos passar o mesmo arquivo lido com a classe File:
Scanner scanner = new Scanner(file);Conseguimos manipular o que está sendo digitado no console atravês do hasNext, que fica esperando um comando de Enter, nesse exemplo a saída será a impressão no console:
while (scanner.hasNext()) { System.out.println(scanner.next()); }Veja no código completo:
public class FileScanner { public static void main(String arg[]){ try { File file = new File("/home/rogerio/Desktop/file.txt"); Scanner scanner = new Scanner(file); while (scanner.hasNext()) { System.out.println(scanner.next()); } scanner.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } } }A classe scanner também pode ser usada para ler o o conteúdo do console, Para isso precisamos passa para a Classe Scanner o System.in do java.util, onde ele pegara o conteúdo que será digito no console. Nesse exemplos vamos ler uma String no console e ela será lida com a seguinte linha, onde nextLine sempre vai esperar a próxima linha digitada.
String frase = scanner.nextLine();Passamos o conteúdo da String recebida para a Classe StringBugger.
StringBuffer fraseInversa = new StringBuffer(frase);Agora chegamos no no que eu falei no começo do artigo onde precisei inverter a String, para isso usei o metodo reverse do StringBuffer.
fraseInversa.reverse();Segue o Exemplo completo:
public class InveterString { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("Digite a String inversa:"); String frase = scanner.nextLine(); StringBuffer fraseInversa = new StringBuffer(frase); fraseInversa.reverse(); System.out.println(fraseInversa); System.exit(0); } }Deixo aqui uma pequena dica para leitura de arquivos e console com a classe Scanner, mas a intenção é fazer uma peque introdução para aprofundamos na manipulação de String na linguagem Java, falaremos mais a fundo de String nos próximos artigos. Até.
Nenhum comentário:
Postar um comentário