Java I/O How to - Copy From Input Stream to Output Stream with java.nio.file.Files








Question

We would like to know how to copy From Input Stream to Output Stream with java.nio.file.Files.

Answer

import java.io.ByteArrayOutputStream;
import java.nio.file.FileSystems;
import java.nio.file.Files;
import java.nio.file.Path;
// www. ja v a2 s  . c o m
public class Main {

  public static void main(String[] args) throws Exception {
    Path sourceFile = FileSystems.getDefault()
        .getPath("C:/home/docs/users.txt");
    ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
    Files.copy(sourceFile, outputStream);
    byte arr[] = outputStream.toByteArray();
    System.out.println("The contents of " + sourceFile.getFileName());
    for (byte data : arr) {
      System.out.print((char) data);
    }

  }
}