首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

资料有关操作,重命名失败

2013-01-09 
文件有关操作,重命名失败现在main类中调用test(){ modif();addFile();}不能成功。但是变成main中直接用addF

文件有关操作,重命名失败
现在main类中调用test(){ modif();addFile();}不能成功。   但是变成main中直接用addFile();就可以成功。
test和addFile是在main之外的另一个类中写的,addFile中主要是对已存在的一个文件log.txt进行重命名,然后再新建log.txt,  modify中是对log.txt进行写操作。 并且在addFile()函数体中开始处对读写流进行了close操作。   求:如何才能使得调用test执行成功,并作解释,谢谢。。。
[解决办法]
modify和addFile都对同个文件读写操作没有file.close就会有权限冲突了。你把异常贴出来看看
[解决办法]
下面这段代码,打开了文件输入流,而没有关闭,导致改名不成功.

private boolean isTooLarge() throws IOException{
long space;
space = new FileInputStream(file).available()/1024;//打开输入流而没关闭。
System.out.println("Log.isTooLarge()"+space);
return (space > MAX_FILE_SIZE); 
}

如此改一下,就ok了。

private boolean isTooLarge() throws IOException
{
long space;
FileInputStream fis=new FileInputStream(file);
space = fis.available()/1024;
fis.close();    //关闭流!!!
System.out.println("Log.isTooLarge()"+space);
return (space > MAX_FILE_SIZE); 
}

热点排行