Example & Tutorial understanding programming in easy ways.

what is the NIO.2 feature of java 7 new IO API?

The NIO.2(Non-blocking input-output) file system is the new and most amazing feature of the java 7 release. This new package has been upgraded in java7 packages as "java.nio".

Talking about File systems support and features which let us  deal with file system we can name the following features:

1. Platform friendly-ness of NIO.2: We can deal with all file systems in a unified model.

2. File tree walk: We can walk on a file tree and examine each node using the built-in APIs, NIO.2 to let us know whether the current member is a file, a directory or a symbolic link. We can then perform any operation we want on that node.

3. File Operations (Copy, Delete, Move): Basic operations are supported with plethora of options. The move operation can be performed in atomic way.

4. Symbolic links support: count soft and hard links as well as managing them.

5. Support for file attributes in NIO.2: Managing file systems attributes is fully supported for different file systems including DOS, POSIX...

6. File system change notification: We can setup a watch service and receive notification when a change happens on the path we are watching.

7. SPI for providing new file systems support, for example to support zip, zfs, btrfs, we can implement the provider interfaces and use the unified API to access that specific file system using our implementation.

Read More →