要想执行下面的语句,必须有个file来进行写入。第一次监听到事件的时候,file肯定是null的,因为只在前面定义而没有new出来,这是后进入if判断语句- saveDir.setVisible(true);
-
- String dirPath = saveDir.getDirectory();
- String dirFile = saveDir.getFile();
- if(dirPath==null||dirFile==null)
- return ;
- file = new File(dirPath,dirFile);
复制代码 这个语句显示一个保存界面,然后根据用户选择的dirPath和dirFile来new出一个file实例: file = new File(dirPath,dirFile)
当第二次监听到事件的时候,由于第一次已经选择了文件保存路径,file已经实例化过了,这时候就不再进入if语句,直接进入下面的try语句。
所以这个file为不为空,实际上就是第一次执行这段监听代码的时候为空,第二次不为空。 |