Java對文件內容有讀寫兩種操做。分爲字符流和字節流兩中。讀文件內容可用java.util下的Scanner類。 具體代碼以下:java
package com.ass.io; import java.io.BufferedOutputStream; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.Scanner; /** * 對文件進行讀取,運用java.util中的Sacnner類進行操做,裏面有現成的方法,比直接操做IO要簡單點; * 在實例化對象時可選擇字節流或者是字符流進行實例化,字節流操做字節效率高,字符流操做字符效率高; * 對文件進行寫入操做只能用IO進行操做。 */ public class FileOpt { public static void main(String args[]) throws IOException { // 文件寫入 // 字節流 BufferedOutputStream bus = null; try { bus = new BufferedOutputStream(new FileOutputStream(new File("E://test.txt"))); bus.write("test1".getBytes()); bus.write("\r\n".getBytes()); bus.write("test2".getBytes()); } catch (FileNotFoundException e1) { e1.printStackTrace(); } finally { bus.close(); } // 字符流 BufferedWriter buw=null; try { buw = new BufferedWriter(new FileWriter(new File("E://test1.txt"))); buw.write("test3"); buw.newLine(); buw.write("test4"); } catch (FileNotFoundException e1) { e1.printStackTrace(); } finally { buw.close(); } // 文件讀取 Scanner sc = null; // 使用字節流進行實例化 try { sc = new Scanner(new FileInputStream(new File("E://test.txt"))); while (sc.hasNext()) { System.out.println(sc.nextLine()); } } catch (FileNotFoundException e) { e.printStackTrace(); } finally { sc.close(); } // 使用字符流進行實例化 try { sc = new Scanner(new FileReader(new File("E://test1.txt"))); while (sc.hasNext()) { System.out.println(sc.nextLine()); } } catch (FileNotFoundException e) { e.printStackTrace(); } finally { sc.close(); } } }