Resin's VFS combines and simplifies the morass in Java I/O. The core classes are:

- - API similar to File, but supports URLs as well as paths.
- - buffered read stream handing both byte and character input
- - buffered write stream handling both byte and character output

Path access is based on standard URLs. The following URL schemes are predefined.

- file: -- the standard filesystem
- http: -- the http filesystem
- mailto: -- sending mail
- stdout: -- standard output (System.out)
- stderr: -- standard error (System.err)
- tcp: -- TCP socket pair
- null: -- /dev/null
- log: -- debug logging (controlled by resin.conf)

Since implements and implements the VFS streams can be used without fuss in most cases.

The VFS streams are always buffered, so applications don't need to worry about creating buffered streams.

WriteStream also implements the functions, throwing IOExceptions, so applications can easily write strings.

The facade is the most convenient way to open a new file using Resin's VFS. To open a file for reading, use

<example> ReadStream is = Vfs.openRead("test.html"); </example>