我想测试一下anroid是否支持自动关闭流的功能,怎奈jdk并没有提供判断流是否关闭的接口,只能剑走偏锋,想了一个矬逼的办法,抓异常,具体代码如下。FileInputS 我想测试一下anroid是否
我想测试一下anroid是否支持自动关闭流的功能,怎奈jdk并没有提供判断流是否关闭的接口,只能剑走偏锋,想了一个矬逼的办法,抓异常,具体代码如下。
FileInputStream fi2 = null; try (FileInputStream fi = new FileInputStream(pngFilePath)) { fi2 = fi; } catch (IOException e) { e.printStackTrace(); } finally { try { fi2.read(); } catch (IOException e) { e.printStackTrace(); //如果流已经关闭,这里会报 } } FileOutputStream fo2 = null; try (FileOutputStream fo = new FileOutputStream(pngFilePath)) { fo2 = fo; } catch (IOException e) { e.printStackTrace(); } finally { try { fo2.write(new byte[] {1, 2, 3}); } catch (IOException e) { e.printStackTrace(); //如果流已经关闭,这里会报 } }