字节流按一个字节一个字节读取文件
import java.io.*; public class TestFileInputStream { public static void main(String[] args) { int b = 0; FileInputStream in = null; try { in = new FileInputStream("E:\Programs\JavaTest\JavaBasicTest\HelloWorld.java"); } catch (FileNotFoundException e) { System.out.println("找不到指定文件"); System.exit(-1); } try { long num = 0; while((b=in.read())!=-1) { System.out.print((char)b); num++; } in.close(); System.out.println(); System.out.println("共读取了" + num + " 个字节"); } catch (IOException e1){ System.out.println("文件读取错误"); System.exit(-1); } } }
运行结果:
Compiling TestFileInputStream.java....... -----------OUTPUT----------- public class HelloWorld { public static void main(String args[]) { System.out.println("HelloWorld!"); } } 共读取了115 个字节
字符流按一个字符一个字符读取文件
import java.io.*; public class TestFileReader { public static void main(String[] args) { FileReader fr = null; int c = 0; try { fr = new FileReader("E:\Programs\JavaTest\JavaBasicTest\HelloWorld.java"); int In = 0; while((c=fr.read())!=-1) { System.out.print((char)c); } fr.close(); } catch (FileNotFoundException e) { System.out.println("找不到指定文件"); } catch (IOException e) { System.out.print("文件读取错误"); } } }
运行结果:
Compiling TestFileReader.java....... -----------OUTPUT----------- public class HelloWorld { public static void main(String args[]) { System.out.println("HelloWorld!"); } } [Finished in 1.0s]
字节流复制文件
import java.io.*; public class TestFileOutputStream { public static void main(String[] args) { int b = 0; FileInputStream in = null; FileOutputStream out = null; try { in = new FileInputStream("E:\Programs\JavaTest\JavaBasicTest\HelloWorld.java"); out = new FileOutputStream("E:\Programs\JavaTest\JavaBasicTest\CopyHelloWorld.java"); while ((b=in.read())!=-1) { out.write(b); } in.close(); out.close(); } catch (FileNotFoundException e1) { System.out.println("找不到指定文件"); System.exit(-1); } catch (IOException e2) { System.out.println("文件复制错误"); System.exit(-1); } System.out.println("文件已复制"); } }
Writer
import java.io.*; public class TestFileWriter { public static void main(String[] args) { FileWriter fw = null; try { fw = new FileWriter("E:\Programs\JavaTest\JavaBasicTest\HelloWorld.java"); for (int c = 0; c <= 50000; c++) { fw.write(c); } fw.close(); } catch (IOException e) { e.printStackTrace(); System.out.println("文件写入错误"); System.exit(-1); } } }