java 位元組流與高效位元組流的區別
阿新 • • 發佈:2019-02-09
import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class Main { public static void main(String[] args) throws IOException { long start = System.currentTimeMillis(); method1("D:\\666\\555.txt", "D:\\666\\444.txt"); method2("D:\\666\\555.txt", "D:\\666\\444.txt"); method3("D:\\666\\555.txt", "D:\\666\\444.txt"); method4("D:\\666\\555.txt", "D:\\666\\444.txt"); long end = System.currentTimeMillis(); System.out.println("共耗時:" + (end - start) + "毫秒"); } // 高效位元組流一次讀寫一個位元組陣列: public static void method4(String srcString, String destString) throws IOException { BufferedInputStream bis = new BufferedInputStream(new FileInputStream(srcString)); BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(destString)); byte[] bys = new byte[1024]; int len = 0; while ((len = bis.read(bys)) != -1) { bos.write(bys, 0, len); } bos.close(); bis.close(); } // 高效位元組流一次讀寫一個位元組: public static void method3(String srcString, String destString) throws IOException { BufferedInputStream bis = new BufferedInputStream(new FileInputStream(srcString)); BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(destString)); int by = 0; while ((by = bis.read()) != -1) { bos.write(by); } bos.close(); bis.close(); } // 基本位元組流一次讀寫一個位元組陣列 public static void method2(String srcString, String destString) throws IOException { FileInputStream fis = new FileInputStream(srcString); FileOutputStream fos = new FileOutputStream(destString); byte[] bys = new byte[1024]; int len = 0; while ((len = fis.read(bys)) != -1) { fos.write(bys, 0, len); } fos.close(); fis.close(); } // 基本位元組流一次讀寫一個位元組 public static void method1(String srcString, String destString) throws IOException { FileInputStream fis = new FileInputStream(srcString); FileOutputStream fos = new FileOutputStream(destString); int by = 0; while ((by = fis.read()) != -1) { fos.write(by); } fos.close(); fis.close(); } }