java StringBuffer实现file打印

public class Task01 {
	private static StringBuffer stringbuffer = new StringBuffer();
//	2、	把File案例3的控制台打印出来的文件名称,全部写入D:\\file.txt文件里。
	
	
	public static void showFiles(File file){
		if(file.isFile()){ //文件
			System.out.println(file.getAbsolutePath()+","+
		file.getName()+",大小:"+file.length()+",最后修改时间:"+
					new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss").
					format(new Date(file.lastModified()))+"\r\n");
			
		stringbuffer.append(file.getAbsolutePath()+","+
		file.getName()+",大小:"+file.length()+",最后修改时间:"+
					new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss").
					format(new Date(file.lastModified()))+"\r\n");	
			
			
			
		}else{ //文件夹
			File[] listFiles = file.listFiles();//子目录和文件
			for (File file2 : listFiles) {
				showFiles(file2);//字节调用自己   递归
			}
		}
	}
	public static void main(String[] args) {
		File file = new File("E:/javaAll/01javase/课堂笔记");
		if(file.exists()){
			showFiles(file);
		}
		
		try {
			FileWriter fw = new FileWriter("D:\\file.txt");//D:/file.txt
			
			//StringBuffer------>String
			fw.write(stringbuffer.toString());
			fw.flush();
			fw.close();
			System.out.println("ending......");
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}

}

你可能感兴趣的:(JavaSE)