㈠ 用java写一个方法,用于彻底删除一个目录,注:该目录为多级目录,且目录下有文件。
importjava.io.File;
publicclassDeleteDirectory{
/**
*删除空目录
*@paramdir将要删除的目录路径
*/
(Stringdir){
booleansuccess=(newFile(dir)).delete();
if(success){
System.out.println(":"+dir);
}else{
System.out.println("Failedtodeleteemptydirectory:"+dir);
}
}
/**
*递归删除目录下的所有文件及子目录下所有文件
*@paramdir将要删除的文件目录
*@returnbooleanReturns"true"ifalldeletionsweresuccessful.
*Ifadeletionfails,themethodstopsattemptingto
*deleteandreturns"false".
*/
privatestaticbooleandeleteDir(Filedir){
if(dir.isDirectory()){
String[]children=dir.list();
//递归删除目录中的子目录下
for(inti=0;i<children.length;i++){
booleansuccess=deleteDir(newFile(dir,children[i]));
if(!success){
returnfalse;
}
}
}
//目录此时为空,可以删除
returndir.delete();
}
/**
*测试
*/
publicstaticvoidmain(String[]args){
doDeleteEmptyDir("new_dir1");
StringnewDir2="new_dir2";
booleansuccess=deleteDir(newFile(newDir2));
if(success){
System.out.println(":"+newDir2);
}else{
System.out.println(":"+newDir2);
}
}
}
㈡ 如何通过java实现对指定目录下的txt文件进行增删改查
代码如下:
importjava.io.BufferedReader;
importjava.io.BufferedWriter;
importjava.io.FileInputStream;
importjava.io.FileOutputStream;
importjava.io.IOException;
importjava.io.InputStreamReader;
importjava.io.OutputStreamWriter;
importjava.util.ArrayList;
importjava.util.List;
publicclassApp61{
publicstaticvoidmain(String[]args)throwsIOException{
//查找行输出
Stringline=findFileLine("mylist.txt","abc");
System.out.println(line);
//删除指定行
removeFileLine("mylist.txt",2);
}
staticvoidremoveFileLine(Stringfile,intline)throwsIOException{
List<String>lines=readFileLines(file);
lines.remove(line-1);
FileOutputStreamoutputStream=null;
=null;
BufferedWriterwriter=null;
try{
outputStream=newFileOutputStream(file);
streamWriter=newOutputStreamWriter(outputStream);
writer=newBufferedWriter(streamWriter);
for(Stringstr:lines){
writer.write(str+System.lineSeparator());
}
}finally{
if(writer!=null){
writer.close();
}
if(streamWriter!=null){
streamWriter.close();
}
if(outputStream!=null){
outputStream.close();
}
}
}
//查找行
staticStringfindFileLine(Stringfile,Stringkeywork)throwsIOException{
List<String>lines=readFileLines(file);
for(Stringline:lines){
if(line.contains(keywork)){
returnline;
}
}
return"";
}
//返回文件所有行
staticList<String>readFileLines(Stringfile)throwsIOException{
List<String>lines=newArrayList<>();
FileInputStreaminputStream=null;
InputStreamReaderstreamReader=null;
BufferedReaderreader=null;
try{
inputStream=newFileInputStream(file);
streamReader=newInputStreamReader(inputStream);
reader=newBufferedReader(streamReader);
Stringline="";
while((line=reader.readLine())!=null){
lines.add(line);
}
}finally{
if(reader!=null){
reader.close();
}
if(streamReader!=null){
streamReader.close();
}
if(inputStream!=null){
inputStream.close();
}
}
returnlines;
}
}
㈢ java删除某个目录下所有的txt文件
Filefile=newFile("D:/test");
File[]files=file.listFiles();//获取文件列表
for(inti=0;i<files.length;i++)
{
if(!files[i].isFile())continue;//如果不是文件就跳过(排除文件夹等)
StringfileName=files[i].getName();
if(fileName.endsWith(".txt"))files[i].delete();//后缀名为txt就删除
}
这样就可以了
㈣ java删除文件夹怎么删
import java.io.File; //这是java的一个文件类 它这样声明 比如说c盘下有一个test.txt文件
//File file = new File('test.txt');
private void deleteFile(File file){
if(file.exists()){ //判断文件是否存在
if(file.isFile()){ //判断是否是文件
file.delete(); //delete()方法 你应该知道 是删除的意思;
}else if(file.isDirectory()){ //否则如果它是一个目录
File files[] = file.listFiles(); //声明目录下所有的文件 files[];
for(int i=0;i<files.length;i++){ //遍历目录下所有的文件
this.deleteFile(files[i]); //把每个文件 用这个方法进行迭代
}
}
file.delete();
}else{
System.out.println("所删除的文件不存在!"+'\n');
}
}
//希望你可以明白
㈤ JAVA file.delete() 如何删除 相对路径下的文件
是目录还是文件。目录的话里面有东西就不能够删。文件的话删除 有什么异常出来。
㈥ 如何使用Java程序或shell脚本删除某目录下匹配文件名的文件.
//假设删掉F:javaknow目录下的test.txt文件
importjava.io.File;
publicclassDeleteFile{
publicstaticvoidmain(String[]args){
Filef=newFile("F:/java/know/test.txt");
System.out.println("是否已成功删除内文容件:"+f.delete());
}
}
㈦ 用java编写一个程序,实现删除指定文件夹目录下的所有文件,用到File 里
publicclassDemo1{
publicstaticvoidmain(String[]args){
delAllFiles(newFile("e:/test"));
}
publicstaticvoiddelAllFiles(Filedir){
if(dir.isDirectory()){
for(Filef:dir.listFiles()){
if(!f.isDirectory())
f.delete();
else
delAllFiles(f);
}
}
dir.delete();
}
}
㈧ java文件夹作为临时存放目录,怎样在系统运行完之后清空
importjava.io.File;
publicclassTest{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
StringfilePath="E:\test\test";
Filefile=newFile(filePath);
//调用静态方法删除目录或文件
Test.removeDir(file);
}
publicstaticvoidremoveDir(Filefile){
if(!file.exists()){//目录不存在
return;
}else{
if(file.isFile()){//地址指向一个文件时,就删除这个文件
file.delete();
}else{//当地址指向一个文件夹或目录
File[]fileArray=file.listFiles();
for(inti=0;i<fileArray.length;i++){
//递归删除目录下的文件
removeDir(fileArray[i]);
}
//删除目录
file.delete();
}
}
}
}