import java.io.File;
import java.sql.Date;
import java.util.Calendar;
import java.io.BufferedWriter;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.io.RandomAccessFile;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class IncrementPackage {
protected static Log logger = LogFactory.getLog(IncrementPackage.class);
public static void main(String[] args) {
Calendar cal = Calendar.getInstance();
cal.add(Calendar.DATE, -30);
getIncrementFile("D:\\0_ul\\workspaceEclipse4.3\\bdkm", new Date(cal.getTimeInMillis()));
}
/**
* 获取path路径下面date日期之后修改过的文件名称
* @param path 路径
* @param date 截止日期
*/
public static void getIncrementFile(String path, Date date) {
File filePath = new File(path);
if (!filePath.exists() || filePath.listFiles().length <= 0) return;
File[] files = filePath.listFiles();
Date lastModifiedTime;
for (File file : files) {
if (file.isFile()) {
lastModifiedTime = new Date(file.lastModified());
if (lastModifiedTime.after(date)) {
if(file.getAbsolutePath().indexOf(".class")!=-1){
method3("D:\\0a_dd_class.txt", file.getAbsolutePath());
}
if(file.getAbsolutePath().indexOf("classes")!=-1){
continue;
}
if(file.getAbsolutePath().indexOf(".project")!=-1){
continue;
}
if(file.getAbsolutePath().indexOf(".settings")!=-1){
continue;
}
if(file.getAbsolutePath().indexOf(".classpath")!=-1){
continue;
}
if(file.getAbsolutePath().indexOf(".svn")!=-1){
continue;
}
if(file.getAbsolutePath().indexOf("bigdata.log")!=-1){
continue;
}
method3("D:\\0a_dd.txt", file.getAbsolutePath());
}
}
else if (file.isDirectory()) {
getIncrementFile(file.getAbsolutePath(), date);
}
}
}
public void method1() {
FileWriter fw = null;
try {
File f=new File("E:\\dd.txt");
fw = new FileWriter(f, true);
} catch (IOException e) {
e.printStackTrace();
}
PrintWriter pw = new PrintWriter(fw);
pw.println("追加内容");
pw.flush();
try {
fw.flush();
pw.close();
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void method2(String file, String conent) {
BufferedWriter out = null;
try {
out = new BufferedWriter(new OutputStreamWriter(
new FileOutputStream(file, true)));
out.write(conent+"\r\n");
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
public static void method3(String fileName, String content) {
try {
RandomAccessFile randomFile = new RandomAccessFile(fileName, "rw");
long fileLength = randomFile.length();
randomFile.seek(fileLength);
randomFile.writeBytes(content+"\r\n");
randomFile.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}