Reports new FileInputStream() or new FileOutputStream() expressions that can be replaced with Files.newInputStream() or Files.newOutputStream() calls respectively.
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