Io流字节字符流九种方式读取和写入总结!
2017-04-03 00:00
375 查看
摘要: 字节流4种方式读取和写入,字符流5种
import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; //复制文本文件a--b public class Demo1 { public static void main(String[] args) { method1();// 普通字节流 /单个字节复制写入 method2();// 普通字节流 /字节数组方式复制写入 method3();// 高效字节流/单字节方式复制写入 method4();// 高效字节流/字节数组方式复制写入 method5();// 普通字符流/单字符方式复制写入 method6();// 普通字符流/字符数组方式复制写入 method7();// 高效字符流/单字符方式复制写入 method8();// 高效字符流/字符数组方式复制写入 method9();// 高效字符流/特殊方式复制写入 } private static void method9() { // 高效字符流/特殊方式复制写入 BufferedReader br = null; BufferedWriter bw = null; try { br = new BufferedReader(new FileReader("a.txt")); bw = new BufferedWriter(new FileWriter("b.txt")); String s = null; while ((s = br.readLine()) != null) { bw.write(s); bw.newLine(); bw.flush(); } br.close(); bw.close(); } catch (IOException e) { e.printStackTrace(); } } private static void method8() { // 高效字符流/字符数组方式复制写入 BufferedReader br = null; BufferedWriter bw = null; try { br = new BufferedReader(new FileReader("a.txt")); bw = new BufferedWriter(new FileWriter("b.txt")); char[] ch = new char[1024]; int n = 0; while ((n = br.read(ch)) != -1) { bw.write(ch, 0, n); bw.flush(); } bw.close(); br.close(); } catch (IOException e) { e.printStackTrace(); } } private static void method7() { // 高效字符流/单字符方式复制写入 BufferedReader br = null; BufferedWriter bw = null; try { br = new BufferedReader(new FileReader("a.txt")); bw = new BufferedWriter(new FileWriter("b.txt")); int n = 0; while ((n = br.read()) != -1) { bw.write(n); bw.flush(); } bw.close(); br.close(); } catch (IOException e) { e.printStackTrace(); } } private static void method6() { // 普通字符流/字符数组方式复制写入 FileReader fr = null; FileWriter fw = null; try { fr = new FileReader("a.txt"); fw = new FileWriter("b.txt"); char[] ch = new char[1024]; int len = 0; while ((len = fr.read(ch)) != -1) { fw.write(ch, 0, len); fw.flush(); } fr.close(); fw.close(); } catch (IOException e) { e.printStackTrace(); } } private static void method5() { // 普通字符流/单字符方式复制写入 FileReader fr = null; FileWriter fw = null; try { fr = new FileReader("a.txt"); fw = new FileWriter("b.txt"); int n = 0; while ((n = fr.read()) != -1) { fw.write(n); fw.flush(); } fr.close(); fw.close(); } catch (IOException e) { e.printStackTrace(); } } private static void method4() { // 高效字节流/字节数组方式复制写入 BufferedInputStream bi = null; BufferedOutputStream bo = null; try { bo = new BufferedOutputStream(new FileOutputStream("b.txt")); bi = new BufferedInputStream(new FileInputStream("a.txt")); byte[] by = new byte[1024]; int len = 0; while ((len = bi.read(by)) != -1) { bo.write(by, 0, len); bo.flush(); } bi.close(); bo.close(); } catch (IOException e) { e.printStackTrace(); } } private static void method3() { // 高效字节流/单字节方式复制写入 BufferedInputStream bi = null; BufferedOutputStream bo = null; try { bi = new BufferedInputStream(new FileInputStream("a.txt")); bo = new BufferedOutputStream(new FileOutputStream("b.txt")); int n = 0; while ((n = bi.read()) != -1) { bo.write(n); bo.flush(); } bi.close(); bo.close(); } catch (IOException e) { e.printStackTrace(); } } private static void method2() { // 普通字节流 /字节数组方式复制写入 FileInputStream fi = null; FileOutputStream fo = null; try { fi = new FileInputStream("a.txt"); fo = new FileOutputStream("b.txt"); byte[] by = new byte[1024]; int len = 0; while ((len = fi.read(by)) != -1) { fo.write(by, 0, len); fo.flush(); } fi.close(); fo.close(); } catch (IOException e) { e.printStackTrace(); } } private static void method1() { // 普通字节流 /单个字节复制写入 FileInputStream fi = null; FileOutputStream fo = null; try { fi = new FileInputStream("a.txt"); fo = new FileOutputStream("b.txt"); int n = 0; while ((n = fi.read()) != -1) { fo.write(n); fo.flush(); } fi.close(); fo.close(); } catch (IOException e) { e.printStackTrace(); } } }
相关文章推荐
- <BIO>以字节的方式(写入,读取)文本,以字符的方式(写入,读取)文本和<NIO>的写入,读取
- java中复制文本文件的方式我总结为14种(按字符读取4中,按字节读取8种!??)
- c#文件读取和写入的方式总结
- 黑马程序员--Java基础学习之IO流之字节流、字符流、读取写入文件、Copy文件、键盘输入输出、流操作的基本规律
- 【Java】运用多种方式读取文件内容,包括按字节、字符和按行为单位读取文件内容
- 黑马程序员_java的IO流(对第十八课IO理解以及文件读取和字符写入总结)
- IO流:编码方式,字节字符区别以及一些流的父类的区别以及使用情况。
- io文件操作(多种读取方式-字节,字符,行,随机)
- 字节写入读出//字符读取写入//带缓存读取写入
- 20-IO流-07-IO流(字符流-FileReader-读取方式二)
- c#文件读取和写入的方式总结
- 20-IO流-06-IO流(字符流-FileReader-读取方式一)
- IO流中以字符流读取和写入。
- IO流文本文件读取方式二---通过字符数组进行读取
- 文件写入读取和宽字符多字节字符间转换
- (82)IO概述、字符流写入、异常处理、续写、两种读取方式、读写练习
- day14 pickle只支持字节方式 读取和写入
- 06-IO流(字符流-FileReader-读取方式一 1 2 07-IO流(字符流-两种读取方式 12
- c#文件读取和写入的方式总结
- 文件读写——以字符方式读取与写入文件