Java中文件及目錄操作

掌握Java中的文件操作     

1.創建文件     

2.創建文件夾   

3.刪除文件     

4.刪除文件夾     

5.讀文件     

6.寫文件

import java.io.File;
import java.io.IOException;
public class TestFileDemo200 {
	public static void main(String[] args) {
//		createFile("c://file.txt");
//		createDirectory("c://directory");
//		deleteFile("c://file.txt");
		deleteDirectory("c://directory");
	}
	// 刪除文件夾的方法(遞歸刪除文件夾下面的子文件和文件夾)
	public static void deleteDirectory(String dirPath) {
		File file = new File(dirPath);
		if (!file.exists()) {
			return;
		}
		if (file.isFile()) {
			file.delete();
		} else if (file.isDirectory()) {
			File[] files = file.listFiles();
			for (File f : files) {
				deleteDirectory(dirPath + "/" + f.getName());
			}
			file.delete();
		}
	}

	// 創建文件的方法
	public static boolean createFile(String filePath) {
		boolean result = false;
		File file = new File(filePath);// 在內存中創建文件對象
		if (!file.exists()) {
			try {
				result = file.createNewFile();// 在磁盤上創建文件
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
		return result;
	}

	// 創建文件夾的方法
	public static boolean createDirectory(String directory) {
		boolean result = false;
		File file = new File(directory);
		if (!file.exists()) {
			result = file.mkdir();// 創建目錄
		}
		return result;
	}

	// 刪除文件的方法
	public static boolean deleteFile(String filePath) {
		boolean result = false;
		File file = new File(filePath);
		if (file.exists() && file.isFile()) {
			result = file.delete();
		}
		return result;
	}

}

import java.io.File;
import java.io.FileInputStream;
import java.io.FileWriter;
import java.io.IOException;

public class TestFileIO200 {

	public static void main(String[] args) {
		writeFileByFileWriter("c://test.txt","中國ABCDEFGHg");
		String str = readFileByBytes("c://test.txt");
		System.out.println(str);
	}
	//以字節爲單位讀取文件,常用於讀二進制文件,比如圖片、聲音、視頻等文件
	public static String readFileByBytes(String path) {
		File  file = new File(path) ;
		if(!file.exists()&&!file.isFile()) {
			return null;
		}
		StringBuffer content = new StringBuffer();
		byte[] data = new byte[1024];
		try {
			FileInputStream fis = new FileInputStream(file);
			while(fis.read(data)!=-1) {
				content.append(new String(data));
				data = new byte[1024];
			}
			fis.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
		return content.toString();
	}
	//寫文件,字符串寫入文件中
	public static void writeFileByFileWriter(String path,String content) {
		try {
			FileWriter fw = new FileWriter(path);
			fw.write(content);
			fw.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章