Java - arquivo para leitor

Java - arquivo para leitor

Neste tutorial rápido, vamos ilustrarhow to convert a File to a Reader usando Java simples, Guava ou Apache Commons IO. Vamos começar.

Este artigo faz parte dethe “Java – Back to Basic” series aqui no exemplo.

1. Com Plain Java

Vejamos primeiro a solução Java simples:

@Test
public void givenUsingPlainJava_whenConvertingFileIntoReader_thenCorrect()
  throws IOException {
    File initialFile = new File("src/test/resources/initialFile.txt");
    initialFile.createNewFile();
    Reader targetReader = new FileReader(initialFile);
    targetReader.close();
}

2. Com goiaba

Agora - vamos ver a mesma conversão, desta vez usando a biblioteca Guava:

@Test
public void givenUsingGuava_whenConvertingFileIntoReader_thenCorrect() throws
  IOException {
    File initialFile = new File("src/test/resources/initialFile.txt");
    com.google.common.io.Files.touch(initialFile);
    Reader targetReader = Files.newReader(initialFile, Charset.defaultCharset());
    targetReader.close();
}

3. Com Commons IO

E, finalmente, vamos terminar com o exemplo de código Commons IO, fazendo a conversão por meio de uma matriz de bytes intermediária:

@Test
public void givenUsingCommonsIO_whenConvertingFileIntoReader_thenCorrect()
  throws IOException {
    File initialFile = new File("src/test/resources/initialFile.txt");
    FileUtils.touch(initialFile);
    FileUtils.write(initialFile, "With Commons IO");
    byte[] buffer = FileUtils.readFileToByteArray(initialFile);
    Reader targetReader = new CharSequenceReader(new String(buffer));
    targetReader.close();
}

E aí está -3 ways to convert a File into a Reader - primeiro com Java puro, depois com Guava e finalmente com a biblioteca IO Apache Commons.