在之前某个项目中,上传的文件需要进行多次处理,所以需要多次重复使用FileInputStream。为了节约资源,我使用反射调用FileInputStream中的私有方法open(),多次读取文件。以上的功能都没有问题,但在最后关闭了FileInputStream流后,文件无法删除。
File file = new File("D:\\csdn_js.txt");
InputStream in = new FileInputStream(file);
byte[] b = new byte[4096];
int length = 0;
while ((length = in.read(b)) > -1