86、java的IO操作-字符缓冲流
来源:互联网 发布:daas大数据 编辑:程序博客网 时间:2024/06/05 11:59
/* * 字符流为了高效读写,也提供了对应的字符缓冲流。 * BufferedWriter:字符缓冲输出流 * BufferedReader:字符缓冲输入流 * * BufferedWriter:字符缓冲输出流 * 将文本写入字符输出流,缓冲各个字符,从而提供单个字符、数组和字符串的高效写入。 * 可以指定缓冲区的大小,或者接受默认的大小。在大多数情况下,默认值就足够大了。 */public class BufferedWriterDemo {public static void main(String[] args) throws IOException {// BufferedWriter(Writer out)// BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(// new FileOutputStream("bw.txt")));BufferedWriter bw = new BufferedWriter(new FileWriter("bw.txt"));bw.write("hello");bw.write("world");bw.write("java");bw.flush();bw.close();}}/* * BufferedReader * 从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取。 * 可以指定缓冲区的大小,或者可使用默认的大小。大多数情况下,默认值就足够大了。 * * BufferedReader(Reader in) */public class BufferedReaderDemo {public static void main(String[] args) throws IOException {// 创建字符缓冲输入流对象BufferedReader br = new BufferedReader(new FileReader("bw.txt"));// 方式1// int ch = 0;// while ((ch = br.read()) != -1) {// System.out.print((char) ch);// }// 方式2char[] chs = new char[1024];int len = 0;while ((len = br.read(chs)) != -1) {System.out.print(new String(chs, 0, len));}// 释放资源br.close();}}/* * 字符缓冲流的特殊方法: * BufferedWriter: * public void newLine():根据系统来决定换行符 * BufferedReader: * public String readLine():一次读取一行数据 * 包含该行内容的字符串,不包含任何行终止符,如果已到达流末尾,则返回 null */public class BufferedDemo {public static void main(String[] args) throws IOException {// write();read();}private static void read() throws IOException {// 创建字符缓冲输入流对象BufferedReader br = new BufferedReader(new FileReader("bw2.txt"));// public String readLine():一次读取一行数据// String line = br.readLine();// System.out.println(line);// line = br.readLine();// System.out.println(line);// 最终版代码String line = null;while ((line = br.readLine()) != null) {System.out.println(line);}//释放资源br.close();}private static void write() throws IOException {// 创建字符缓冲输出流对象BufferedWriter bw = new BufferedWriter(new FileWriter("bw2.txt"));for (int x = 0; x < 10; x++) {bw.write("hello" + x);// bw.write("\r\n");bw.newLine();bw.flush();}bw.close();}}/* * 需求:把当前项目目录下的a.txt内容复制到当前项目目录下的b.txt中 * * 数据源: * a.txt -- 读取数据 -- 字符转换流 -- InputStreamReader -- FileReader -- BufferedReader * 目的地: * b.txt -- 写出数据 -- 字符转换流 -- OutputStreamWriter -- FileWriter -- BufferedWriter */public class CopyFileDemo {public static void main(String[] args) throws IOException {// 封装数据源BufferedReader br = new BufferedReader(new FileReader("a.txt"));// 封装目的地BufferedWriter bw = new BufferedWriter(new FileWriter("b.txt"));// 两种方式其中的一种一次读写一个字符数组char[] chs = new char[1024];int len = 0;while ((len = br.read(chs)) != -1) {bw.write(chs, 0, len);bw.flush();}// 释放资源bw.close();br.close();}}/* * 需求:把当前项目目录下的a.txt内容复制到当前项目目录下的b.txt中 * * 数据源: * a.txt -- 读取数据 -- 字符转换流 -- InputStreamReader -- FileReader -- BufferedReader * 目的地: * b.txt -- 写出数据 -- 字符转换流 -- OutputStreamWriter -- FileWriter -- BufferedWriter */public class CopyFileDemo2 {public static void main(String[] args) throws IOException {// 封装数据源BufferedReader br = new BufferedReader(new FileReader("a.txt"));// 封装目的地BufferedWriter bw = new BufferedWriter(new FileWriter("b.txt"));// 读写数据String line = null;while ((line = br.readLine()) != null) {bw.write(line);bw.newLine();bw.flush();}// 释放资源bw.close();br.close();}}
阅读全文
0 0
- 86、java的IO操作-字符缓冲流
- java-IO操作——使用带有缓冲的字符流读写数据
- java IO (二) 字符流的缓冲
- 82、java的IO操作-字节缓冲流
- Java的IO操作(五) - PrintStream类、字符流、Reader和Writer、带缓冲的字符流BufferedReader和BufferedWriter
- Java的IO操作(五) - PrintStream类、字符流、Reader和Writer、带缓冲的字符流BufferedReader和BufferedWriter .
- java20.IO操作------使用带有缓冲的字符流读写数据
- Java IO流 文件的复制的几种方法(字节流,字符流,缓冲流)
- java-IO流7(缓冲输入输出字符流)
- java io系列23之 BufferedReader(字符缓冲输入流)
- java io系列23之 BufferedReader(字符缓冲输入流)
- java io系列24之 BufferedWriter(字符缓冲输出流)
- Java-IO之BufferedReader(字符缓冲输入流)
- Java-IO之BufferedWriter(字符缓冲输出流)
- java io系列23之 BufferedReader(字符缓冲输入流)
- java io系列24之 BufferedWriter(字符缓冲输出流)
- java io 缓冲流
- java 缓冲流的操作
- ln修改cdh日志目录
- linux离线安装mysql
- 一些单链表的面试题
- K-Means聚类算法的原理及实现【转】
- Toast
- 86、java的IO操作-字符缓冲流
- linux 如何编译 静态库,动态库
- POJ 2456-Aggressive cows
- 设置NotePad++设置"不打开上次关闭的文件"
- Ajax-XMLHttpRequest对象
- hive 数据体系构建与应用的使用过程
- mybatis卡死,项目的数据库操作没响应,控制台不报错。
- Cannot create a symlink to ...... Read only file system
- 创建自己的portlet