A. java怎样删除文件及子文件
递归程序如下:
import java.io.File;
public class DeleteFile {
public static void main(String[] args) {
//路径名自己要小心写哦,一次性就删除完了
String path="F:\\html";
File f=new File(path);
try {
deleteFile(f);
} catch (Exception e) {
e.printStackTrace();
System.exit(0);
}
System.out.println("==删除完成==");
}
public static void deleteFile(File f) throws Exception{
if(f.isFile()){
if(f.canWrite()){
f.delete();
}else{
throw new Exception("文件:"+f.getName()+"只读,无法删除,请手动删除");
}
}else{
File[] fs = f.listFiles();
if(fs.length!=0)
{
for(int i=0;i<fs.length;i++){
deleteFile(fs[i]);
}
}
f.delete();
}
}
}
B. 请问用java 如何实现逻辑删除文件
把文件名用数据库管理起来,
先确定某个目录下放置你逻辑删除的文件,
每次删除文件把原路径和删除后的保存的路径放置到数据库,
当你需要还原的时候通过查询数据库再拷回去就可以了.
当然你想做直接删除也可以,不放入数据库直接删就行了
事实上windows 也是这样管理的,删除时移动到回收站而已,不过比这个有效率多了.
C. java 删除文件中的数据
1、如果只是想要文件中的内容,可以使用如下代码:
FileOutputStreamfs=newFileOutputStream(newFile("C:\buyterms.txt"));
2、如果是想要文件夹中的内容,可以使用如下代码:
packagecom.xx;
importjava.io.File;
publicclassTest{
publicstaticvoidmain(String[]args){
StringfileRoot="C:/Users/xx/Desktop/xx/xxx";
delFolder(fileRoot);
System.out.println("deleted");
}
////删除完文件后删除文件夹
////paramfolderPath文件夹完整绝对路径
publicstaticvoiddelFolder(StringfolderPath){
try{
delAllFile(folderPath);//删除完里面所有内容
//不想删除文佳夹隐藏下面
//StringfilePath=folderPath;
//filePath=filePath.toString();
//java.io.FilemyFilePath=newjava.io.File(filePath);
//myFilePath.delete();//删除空文件夹
}catch(Exceptione){
e.printStackTrace();
}
}
//删除指定文件夹下所有文件
//parampath文件夹完整绝对路径
publicstaticbooleandelAllFile(Stringpath){
booleanflag=false;
Filefile=newFile(path);
if(!file.exists()){
returnflag;
}
if(!file.isDirectory()){
returnflag;
}
String[]tempList=file.list();
Filetemp=null;
for(inti=0;i<tempList.length;i++){
if(path.endsWith(File.separator)){
temp=newFile(path+tempList[i]);
}else{
temp=newFile(path+File.separator+tempList[i]);
}
if(temp.isFile()){
temp.delete();
}
if(temp.isDirectory()){
delAllFile(path+"/"+tempList[i]);//先删除文件夹里面的文件
//delFolder(path+"/"+tempList[i]);//再删除空文件夹
flag=true;
}
}
returnflag;
}
}
D. java如何删除文本文件
两种方法:
方法一,
File file = new File("?");(?中填写你的文件的路径,注意:win下需要转义,例如:D:\\test.txt,Linux下直接填写,例如:/home/user001/text.txt)
if(file.exists())
file.delete();
方法二,
利用Runtime(Runtime是java的一个取得系统相关进程的类,说白了就是调用系统的命令删除文件)
Runtime run = Runtime.getRuntime();
try {
Process p = run.exec(cmd); //cmd为String,其内容为对应系统的删除命令,例如:在win下,应该写成:String cmd = "del "+你的文件路径以及文件名;
p.waitFor();
} catch (Exception e) {
e.printStackTrace();
}
方法二,速度比较快哦,不过如果小文件的话,速度没什么分别。
E. java 删除文件内容
你的txt文件用来代替传统的数据库?
也就是说,你的txt文件里含有多个图书信息吗?
如果是这样的话,那你的txt文件首先在内容的格式上要有规则性。
至于你说的删除 txt文件,其实用到的就是对文件的读与重写操作。
F. JAVA 删除文件中的内容
问题提得不太清楚
如果是想要清空D:\\buyterms.txt文本内容,可以使用如下代码
FileOutputStream fs = new FileOutputStream(new File("D:\\buyterms.txt"));
G. java中如何删除含相同文件名的文件
取得所有的文件名,迭代每个文件名,如果该名称包含字符串"12345",则把该文件删除。。。。
至于具体代码。。自己编写吧。。
H. java中如何删除本地文件夹以及文件
删除文件夹(前提:文件夹为空以及InputStream和OutputStream等一些数据文件流关掉【close()】,否则文件无法删除)
//删除文件夹
publicstaticvoiddelFolder(StringfolderPath){
try{
delAllFile(folderPath);//删除完里面所有内容
StringfilePath=folderPath;
filePath=filePath.toString();
java.io.FilemyFilePath=newjava.io.File(filePath);
myFilePath.delete();//删除空文件夹
}catch(Exceptione){
e.printStackTrace();
}
}
删除指定文件夹下的所有文件
publicstaticbooleandelAllFile(Stringpath){
booleanflag=false;
Filefile=newFile(path);
if(!file.exists()){
returnflag;
}
if(!file.isDirectory()){
returnflag;
}
String[]tempList=file.list();
Filetemp=null;
for(inti=0;i<tempList.length;i++){
if(path.endsWith(File.separator)){
temp=newFile(path+tempList[i]);
}else{
temp=newFile(path+File.separator+tempList[i]);
}
if(temp.isFile()){
temp.delete();
}
if(temp.isDirectory()){
delAllFile(path+"/"+tempList[i]);//先删除文件夹里面的文件
delFolder(path+"/"+tempList[i]);//再删除空文件夹
flag=true;
}
}
returnflag;
}
}
I. java删除文件夹怎么删
public boolean deleteDirectory(String sPath) {
//如果sPath不以文件分隔符结尾,自动添加文件分隔符
if (!sPath.endsWith(File.separator)) {
sPath = sPath + File.separator;
}
File dirFile = new File(sPath);
//如果dir对应的文件不存在,或者不是一个目录,则退出
if (!dirFile.exists() || !dirFile.isDirectory()) {
return false;
}
flag = true;
//删除文件夹下的所有文件(包括子目录)
File[] files = dirFile.listFiles();
for (int i = 0; i < files.length; i++) {
//删除子文件
if (files[i].isFile()) {
flag = deleteFile(files[i].getAbsolutePath());
if (!flag) break;
} //删除子目录
else {
flag = deleteDirectory(files[i].getAbsolutePath());
if (!flag) break;
}
}
if (!flag) return false;
//删除当前目录
if (dirFile.delete()) {
return true;
} else {
return false;
}
}