讀寫檔案是最常用的操作之一,每次將相應的程式碼片段複製過來不僅麻煩,還會影響整體的美觀。為此我單獨寫了一個檔案操作的類,需要時先把這個類的代碼粘過去,再調用就方便多了。
import java.io.BufferedReader;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;public class FileManager {public static String read(String fileName, String encoding) {StringBuffer fileContent = new StringBuffer();BufferedReader br = null;try { br = new BufferedReader(new InputStreamReader(new FileInputStream(fileName),encoding));String line = null;while ((line = br.readLine()) != null) {fileContent.append(line.trim());fileContent.append("\n");}} catch (Exception e) {e.printStackTrace();}finally{if(br!=null)try {br.close();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}return fileContent.toString();}public static void write(String fileContent, String fileName,String encoding) {OutputStreamWriter osw = null;try {osw = new OutputStreamWriter(new FileOutputStream(fileName), encoding);osw.write(fileContent);osw.flush();} catch (Exception e) {e.printStackTrace();}finally{if(osw!=null)try {osw.close();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}}
調用樣本:
寫入 FileManager.write("Hello, World!", "D://test.txt", "UTF-8");
讀取 System.out.println(FileManager.read("D://test.txt", "UTF-8"));
追加檔案:使用FileOutputStream,在構造FileOutputStream時,把第二個參數設為true