【发布时间】:2018-12-04 14:09:25
【问题描述】:
这是我从特定文件夹(/home/user)中删除“.txt”文件的代码。但是一旦删除,我不知道如何恢复这些已删除的文件。
请给我一些示例代码(如果可能的话),以实现这一目标。
在java中可以吗?如果是这样,请帮助我(我很乐意使用任何其他语言。)
import java.*;
import java.io.File;
class CountFiles
{
public static void main(String args[])
{
String dirPath="/home/user";
File f = new File(dirPath);
File[] files = f.listFiles();
int s=files.length;
System.out.println("Number of files in folder "+s);
for(int i=0;i <s; i++)
{
if (files[i].isFile())
{
String FilesName = files[i].getName();
System.out.println(FilesName);
if (FilesName.endsWith(".txt") || FilesName.endsWith(".TXT"))
{
boolean success = files[i].delete();
vif (!success) throw new IllegalArgumentException("Delete: deletion failed");
else System.out.println("file deleted");
}
System.out.println("file deleted out side.....");
}
}
}
}
【问题讨论】:
-
是什么让您认为您应该能够恢复它们?
-
我知道,这在 java 中是不可能的。 那么你在问什么?
-
唯一可以保证可以完成的方法是在删除之前在某处进行复制。
-
其他语言可以吗?
-
你的意思是要从垃圾桶/recycle-bin/中恢复吗???我们通常不认为这是“删除”,因此人们可能无法在这里回答正确的问题。这是可能的,但可能需要一些 jni(“移动到垃圾箱”而不是真正删除并在之后恢复)。如果这对你有用,你首先需要弄清楚你的操作系统如何使用它的回收/垃圾功能。
标签: java data-recovery