/** * 采用字符流讀取寫入文本文件 */ public class FileUtil { /** * 寫文件 * @param fileName * @param content */ public static void writeFile(String fileName, String content){ FileWriter output = null; BufferedWriter writer = null; try{ output = new FileWriter(fileName); writer = new BufferedWriter(output); writer.write(content); }catch(Exception e){ e.printStackTrace(); }finally{ if(null != writer){ try { writer.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if(null != output){ try { output.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } /** * 讀文件 * @param fileName * @return */ public static String readFile(String fileName){ StringBuffer sb = new StringBuffer(""); FileReader input = null; BufferedReader reader = null; try{ input = new FileReader(fileName); reader = new BufferedReader(input); String line = null; while((line = reader.readLine()) != null){ sb.append(line); } }catch(Exception e){ e.printStackTrace(); }finally{ if(null != reader){ try { reader.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if(null != input){ try { input.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } return sb.toString(); } }
在使用BufferedWriter寫入文件時,如果忘記關閉文件(close)同時也沒有調用flush(),則被寫入的文件中是沒有內容的。在關閉文件的
同時系統會自動調用flush()。