javaio删除文件|java io流对文件的增删改查

㈠ 用java编写一个删除空文件夹的程序

代码如下,使用递归进行删除

importjava.io.File;publicclassMain{publicstaticvoidmain(String[]args){//待删除文件夹所在目录,例如要删除桌面上所有空文件夹,则该变量应该为桌面路径全部删除StringdeletePath="G:/test/";delete(newFile(deletePath));}publicstaticvoiddelete(Filefile){if(file.isDirectory()){File[]childs=file.listFiles();if(childs.length==0){Fileparent=file.getParentFile();file.delete();if(parent.listFiles().length==0){parent.delete();}}else{for(Filechild:childs){delete(child);}}}}}

㈡ Java io中File类中 删除文件的相关问题~

importjava.io.File;publicclass${publicstaticvoidmain(String[]args){Filef=newFile("D:/a");deleteFile(f);}privatestaticvoiddeleteFile(Filef){//如果是文件,直接删除if(f.isFile()){f.delete();return;}//如果是文件夹,先遍历删除里面的文件,最后在把本文件夹删除File[]fs=f.listFiles();for(Filefile:fs){//递归调用的目的是,文件夹里可能有子文件夹deleteFile(file);}//删除文件夹f.delete();}}

㈢ java中如何用io流删除一个文本中的数据

既然是想要删除文本中的所有数据,那就没有必要去删除了,因为还要判断一些乱七版八糟的东权西比较麻烦,直接调用新建的方法即可,新建的同时会删除掉原来的,这时你只需要将新建的文本文件写入空字符串就好了,代码如下:import java.io.File;import java.io.FileWriter;import java.io.IOException;File f = new File("C:/abc.txt");FileWriter fw = null;try {fw = new FileWriter(f);fw.write("");fw.close();} catch (IOException e) {e.printStackTrace();}

㈣ java IO操作 如何在不删除,不替代原文件的前提下删除和插入某一行内容

提供一个思路: 1.声明一个List<String> fileContent 2.按行读取文件,并将其按行加入到fileContent 3.修改fileContent内第二的内容 4.将fileContent的所有内容按行重新写入到文件中OK!

㈤ java io流对文件的增删改查

可以通过BufferedReader 流的形式进行流读取,之后通过readLine方法获取到的内容,之后通过if判断来实现在某些特定位置的查找、增加、删除、修改操作。举例:BufferedReader bre = null;OutputStreamWriter pw = null;//定义一个流try {String file = "D:/test/test.txt";bre = new BufferedReader(new FileReader(file));//此时获取到的bre就是整个文件的缓存流pw = new OutputStreamWriter(new FileOutputStream(“D:/test.txt”),"GBK");//确认流的输出文件和编码格式,此过程创建了“test.txt”实例while ((str = bre.readLine())!= null) // 判断最后一行不存在,为空结束循环{if(str.indexOf("排除")<0){//判断是否需要舍弃pw.write(str);//将要写入文件的内容,可以多次write}}bre.close();//关闭流pw.close();//关闭流解释:以上方法是实现的删除,if中的条件改变下,即可实现其余的功能。备注:文件流用完之后必须及时通过close方法关闭,否则会一直处于打开状态,直至程序停止,增加系统负担。

㈥ java该怎么读取已经被删除的文件,并且通过IO恢复

可以通过BufferedReader 流的形式进行流读取,之后通过readLine方法获取到的内容,之后通过if判断出符合条件的重写如新文件,不符合的直接舍弃即可。举例:BufferedReader bre = null;OutputStreamWriter pw = null;//定义一个流try {String file = "D:/test/test.txt";bre = new BufferedReader(new FileReader(file));//此时获取到的bre就是整个文件的缓存流pw = new OutputStreamWriter(new FileOutputStream(“D:/test.txt”),"GBK");//确认流的输出文件和编码格式,此过程创建了“test.txt”实例while ((str = bre.readLine())!= null) // 判断最后一行不存在,为空结束循环{if(str.indexOf("排除")<0){//判断是否需要舍弃pw.write(str);//将要写入文件的内容,可以多次write}}bre.close();//关闭流pw.close();//关闭流备注:文件流用完之后必须及时通过close方法关闭,否则会一直处于打开状态,直至程序停止,增加系统负担。

㈦ 如何使用java io 的命令删除一个文件中所有.class的文件

没有这种命令,需要自己写。

(Filedir){if(dir.isDirectory()){File[]fs=dir.listFiles();if(fs!=null)for(inti=0;i<fs.length;i++){deleteClassFiles(fs[i]);//递归删除}}elseif(dir.getName().endsWith(".class")){//后缀为.class的文件才删除//if(!dir.delete())dir.deleteOnExit();System.out.println(dir.delete()+"删除文件:"+dir.getAbsolutePath());}}

㈧ 请问用java 如何实现逻辑删除文件

把文件名用数据库管理起来,先确定某个目录下放置你逻辑删除的文件,每次删除文件把原路径和删除后的保存的路径放置到数据库, 当你需要还原的时候通过查询数据库再拷回去就可以了.当然你想做直接删除也可以,不放入数据库直接删就行了事实上windows 也是这样管理的,删除时移动到回收站而已,不过比这个有效率多了.

㈨ 为啥我的删除报异常java.io.EOFException

这个异常不是必须声明的,也就是说它虽然是异常,但其实是正常运行结束的标志。EOF表示读到了文件尾( String str = dis.readUTF(); ,客户端已经断开,后面已经没有内容可以读了),发送结束自然连接也就断开了。

㈩ 用Java的IO编写 1.递归删除当前目录及其子目录下全部文件,并统计删除数目 2.图片拷贝

static int count = 0;public static void deleteFile(String path) {if(path == null) {return;}File file = new File(path);if(!file.exists()) {return;}if(!file.isDirectory()) {count ++;file.delete();return;}File[] fileList = file.listFiles();for(File fc : fileList) {deleteFile(fc.getAbsolutePath());}file.delete();count ++;}


赞 (0)