IO流的一些練習
阿新 • • 發佈:2018-07-23
文本文件 pre 文本 close 創建 throws code true ade
1.復制文本文件
import java.io.*; /** * 復制文本文件 (為操作方便本測試throws) * 條件:此項目下有一個text文件 */ public class CopyText { public static void main(String[] args) throws IOException{ // 分析可知,可采用高效字符流來復制文件 // 創建高效字符輸入流對象 BufferedReader br = new BufferedReader(new FileReader("test.txt")); // 創建高效字符輸出流對象 BufferedWriter bw = new BufferedWriter(new FileWriter("copy.txt")); // 定義字符串來接收字符輸入流讀到的每一行數據 String line = null; // 只要line不為空,說明還能讀到數據 while ((line = br.readLine()) != null) { // 將讀到的一行數據,用字符輸出流對象寫入到copy.txt中 bw.write(line); // 由於readLine()不返回換行符,需要手動添加 bw.newLine(); // 把緩沖區數據寫入文件中 bw.flush(); } // 關閉 輸入流和輸出流對象 br.close(); bw.close(); } }
2.復制圖片
import java.io.*; /** * 復制圖片 (為操作方便 throws 異常) * 條件:此項目下有:test.jp * 分析:用BufferedInputStream 和 BufferedOutputStream */ public class CopyImage { public static void main(String[] args) throws IOException { BufferedInputStream bis = new BufferedInputStream(new FileInputStream("test.jpg")); BufferedOutputStream bos= new BufferedOutputStream(new FileOutputStream("copy.jpg")); // 一般采用字節數組來做 byte[] bytes = new byte[1024]; int length; while ((length = bis.read(bytes)) != -1) { bos.write(bytes, 0, length); } bos.close(); bis.close(); } }
IO流的一些練習