黑马程序员技术交流社区

标题: IO小问题求教 [打印本页]

作者: 莫运飞    时间: 2012-4-8 20:36
标题: IO小问题求教
import java.io.*;


class File

{
                public static void main(String[] args)

{                       
                FileWriter  fw= null;

                       
                        try
{
                fw=new FileWriter("test.java");

                for(int y=0;y<20;y++)
{
                fw.write("我要进黑马,黑马啊,收了我吧"+"\r\n");
                fw.flush();}

}
                catch(IOException e)
{

        System.out.println("系统故障,10秒后系统崩溃,请快速撤离此地");
}

        finally


{
        if(fw!=null)//视频说加了这句语句使得程序更加的健壮性,
                        //但是当fw=null的时候,整个程序不是挺了吗,加这句话还有什么用处呢???
        try
{

        fw.close();

}

        catch(IOException e)

{

        System.out.println("系统故障,10秒后系统崩溃,请快速撤离此地,玩完了!!!!!!!");


}


}
}

}
作者: 莫运飞    时间: 2012-4-8 20:39
)//视频说加了这句语句使得程序更加的健壮性,
                        //但是当fw=null的时候,整个程序不是了吗,加这句话还有什么用处呢???       “ try
”这个是下面的程序  给不小心搞上来了 不好意思
作者: 薛飞飞    时间: 2012-4-8 20:55
file!=null,这个是为了防止程序运行到一半时出错的情况,如果不加这句,当写入数据时中途出错了,这个时候fw!=null,IO流就不会关闭,如果写入数据程序执行完了,没有出错,那么这时fw=null,自然执行不到if语句里面的方法体:fw.close()...
作者: 郑苑东    时间: 2012-4-8 21:03
不等于空时关闭流。。等于空时就没必要关闭。。因为根本没创建成功。。。
作者: 莫运飞    时间: 2012-4-8 21:09
薛飞飞 发表于 2012-4-8 20:55
file!=null,这个是为了防止程序运行到一半时出错的情况,如果不加这句,当写入数据时中途出错了,这个时候f ...

谢谢 楼上的
作者: 邓海涛    时间: 2012-4-8 21:13
if(fw!=null)加了这句话之后,就是说当fw不为空的时候关闭,不为空的时候不关闭,楼上的是正解
作者: 邓海涛    时间: 2012-4-8 21:15
还有就是你定义的那个File类最好不要用File,因为File是java.io.*包中的一个常用类,你这样的话我总觉得不太好,还有就是你的代码格式尽量规范些,这样看起来给人一种比较乱的感觉。
作者: pray    时间: 2014-4-26 06:30
楼主身体健康,万事如意!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2