File
创新互联-专业网站定制、快速模板网站建设、高性价比开平网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式开平网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖开平地区。费用合理售后完善,10余年实体公司更值得信赖。
F=new
File(路径);/通过将给定路径名字符串转换为抽象路径名来创建一个新
File
实例。
F.delete();//删除此抽象路径名表示的文件或目录。
文件的移动的话,得通过输入输出流
FileInputStream
FI=new
FileInputStream(F);
FileOutputStream
FO=new
FileOutputStream(F);
wile(FI.read()!=EOF)
{
FO.write();
}
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Timer;
import java.util.TimerTask;
public class TimerDemo {
public static void main(String[] args) throws Exception {
//得到时间类
Calendar date = Calendar.getInstance();
//设置时间为 xx-xx-xx 00:00:00
date.set(date.get(Calendar.YEAR), date.get(Calendar.MONTH), date.get(Calendar.DATE), 0, 0, 0);
//一天的毫秒数
long daySpan = 24 * 60 * 60 * 1000;
//得到定时器实例
Timer t = new Timer();
//使用匿名内方式进行方法覆盖
t.schedule(new TimerTask() {
public void run() {
//run中填写定时器主要执行的代码块
System.out.println("定时器执行..");
//算了,读取文件我也加上吧
//你没说是文本还是文件,我都用字节流了。
FileInputStream fis = new FileInputStream("D:\\a.txt");
byte[] b = new byte[1024];
int len = 0;
while((len=fis.read(b))!=-1){
//读取输出呀呀呀呀......
System.out.println(new String(b,0,len));
}
}
}, date.getTime(), daySpan); //daySpan是一天的毫秒数,也是执行间隔
};
}
//以上是每天00:00:00执行
可以通过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方法关闭,否则会一直处于打开状态,直至程序停止,增加系统负担。
//移动文件
public static boolean Move(String f1, String f2)
{
// 要移动的文件或文件夹
File file = new File(f1);
// 目标位置
File dir = new File(f2);
//移动
boolean success = file.renameTo(new File(dir, file.getName()));
return success;
}
//复制文件
public static void Copy(String oldPath, String newPath)
{
try {
int bytesum = 0;
int byteread = 0;
File oldfile = new File(oldPath);
if (oldfile.exists()) {
InputStream inStream = new FileInputStream(oldPath);
FileOutputStream fs = new FileOutputStream(newPath);
byte[] buffer = new byte[1444];
int length;
while ( (byteread = inStream.read(buffer)) != -1) {
bytesum += byteread;
System.out.println(bytesum);
fs.write(buffer, 0, byteread);
}
inStream.close();
}
}
catch (Exception e) {
System.out.println( "error ");
e.printStackTrace();
}
}
这个简单啊,主要是文件的获取及移动,第一步,先读取桌面的文件,桌面是有路径,java可以读取某一路径下所有的文件,你可以筛选出快捷方式排除掉,第二步,将文件移动到新建的文件夹,java可以移动文件和创建文件夹,这一步也可以实现,这样整个备份过程就完成了
File的renameTo()就是移动。
它会删掉原来下面的文件,然后在你指定的路径创建一个文件。
前提你要保证指定的路径存在,不存在就先创建。