A common question on stackoverflow is; Why is reading/writing from a file in Java so slow? What is the fastest way? The discussion often compares NIO vs IO. However the read/writing is usually not the problem and the comparison has little importance. To demonstrate this, I am going to show the one of the simplest/slowest ways to read/write text which is slower than writing binary in NIO or IO but is fast enough IMHO for most use cases. The following program prints the following output. Wrote 101 MB/s. Read 109 MB/s. If 100 MB/s is fast enough, it really shouldn't matter which way you read/write data to disk. Note: For very large files, this result depends on the speed and configuration of your disks. In which case, you need to look at how your hardware, don't blame your software. // generate a string with full of A's char[] chars = new char[40]; Arrays.fill(chars, 'A'); String text = new String(chars); final File file = new File("/tmp/a.txt"