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;
}
}