java关闭流代码 java io流关闭

java;怎么关闭流文件?

最好声明在一个特定的作用域里面,这样作用域一到自己就释放掉了,也就不存在什么你来关闭了,因为很多内置类析构函数都是有很完整的系统垃圾回收机制。不要做重复的事,当然如果你需要关闭之后在打开,你可以使用手动关闭。

成都创新互联主要从事成都做网站、网站设计、外贸营销网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务牡丹,10年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:028-86922220

java直接return的文件流如何关闭

代码如下:

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

public class App {

public static void main(String[] args) throws IOException {

// 第一种方式,稍嫌麻烦

FileOutputStream outputStream = null;

try {

outputStream = new FileOutputStream(new File("data.txt"));

outputStream.write(new byte[] { 0x11, 0x22, 0x33, 0x44 });

// 在这里可以直接 return, 会调用 finally 中的代码

} finally {

if (outputStream != null) {

try {

outputStream.close();

} catch (IOException e) {

}

}

}

// 第二种方式,比较简洁,不用显式调用 close(), 会自动调用 close();

try (FileInputStream inputStream = new FileInputStream(new File("data.dat"))) {

byte[] buf = new byte[4];

inputStream.read(buf);

// 可以在这里调用 return ,在这个{}代码块结束时,close 会自动执行,

}

}

}

java中IO流操作怎样关闭流

如果 in == null,就说明 in这个引用所指向的对象还没有被创建,自然 in.close()也就不可能被执行,而且会报异常。我是这样想的,程序中 如果你先声明变量

InputStream(或者其他流类型) in = null;

然后执行其他语句,再 in = new 、、、、

在in new之前其他语句出exception,这时流没有被打开,也就无需关闭,如果不判断if(null != in) 硬要关闭in就出exception

另外你的代码按如下写会更合理:

if(null != in){

try{

in.flush();

in.close();

in = null;

}

catch(IOExection e){};

}


网页名称:java关闭流代码 java io流关闭
当前URL:http://scyanting.com/article/dohdghg.html