Reports FileInputStream or FileOutputStream constructors when it is possible to replace them with Files.newInputStream() or Files.newOutputStream() accordingly.
The streams created using Files methods are usually more efficient than those created by stream constructors.

Example:


InputStream is = new BufferedInputStream(new FileInputStream(file));

After the quick-fix is applied:


InputStream is = new BufferedInputStream(Files.newInputStream(file.toPath()));

This inspection does not show warning if the language level 10 or higher, but the quick-fix is still available.

This inspection only reports if the language level of the project or module is 7 or higher.

New in 2022.1