学习笔记之面向对象编程20(处理流、缓冲流、转换流)
来源:互联网 发布:放置江湖武功数据排行 编辑:程序博客网 时间:2024/05/16 19:50
(一)处理流
Buffering:字符型<BufferedReader、BufferedWriter>,字节型<BufferedInputStream、BufferedOutputStream>
Filtering:字符型<FilterReader、FilterWriter>,字节型<FilterInputStream、FilterOutputStream>
Converting between bytes and character:字符型<InputStreamReader、OutputStreamWriter>
Counting:字符型<LineNumberReader>,字节型<LineNumberInputStream>
peeking ahead:字符型<PusbackRead>,字节型<PushbackInputStream>
Printing:字符型<PrintWriter>,字节型<PrintStream>
(二)缓冲流
缓冲流要“套接”在相应的节点流上,对读写的数据提供了缓冲的功能,提高了读写的效率,同时增加了一些新的方法。
四种缓冲林,其常用的构造方法:
BufferedReader(Reader in)
BufferedReader(Reader in,int sz)
BufferedWriter(Writer out)
BufferedWriter(Writer out, int sz)
BufferedInputStream(InputStream in ,int size)
BufferedInputStream(intputStream in)
BufferedOutputStream(OutputStream in ,int size)
BufferedOutputStream(OuttputStream in)
缓冲输入流支持其父类的mark和reset方法;
BufferedReader提供了ReaderLine方法用于读取一行字符串(以\r或\n分隔)
BufferedWriter提供了newLine用于写入一个行分隔符
对于输出的缓冲流,写出的数据会现在内存中缓存,使用flush方法将会使内存中的数据立刻写出。
(三)转换流
InputStreamReader和OutputStreamWriter用于字节数据到字符数据之间的转换
InputStreamReader需要和InputStream“套接”
OutputStreamWriter需要和OutputStream“套接”
转换流在构造时可以指定其编码集合
举例:
import java.io.*;public class TestTransForm2 {public static void main(String[] args){InputStreamReader s1 = new InputStreamReader(System.in);BufferedReader s2 = new BufferedReader(s1);String s = null;try{s=s2.readLine();while(s!=null){if(s.equalsIgnoreCase("exit"))break;System.out.println(s.toUpperCase());s=s2.readLine();}s2.close();}catch(IOException e){e.printStackTrace();}}}
- 学习笔记之面向对象编程20(处理流、缓冲流、转换流)
- 学习笔记之面向对象编程18(流之 InputStream,OutputStream)
- 学习笔记之面向对象编程19(流之Reader,Writer)
- 学习笔记之面向对象编程21(数据流、Print流)
- 学习笔记之JavaSE(20)--面向对象编程11
- 学习笔记之面向对象编程9(异常的捕获和处理)
- 学习笔记之面向对象编程25(网络编程)
- Java IO之处理流(缓冲流、转换流)
- [学习笔记]python之面向对象编程
- JavaScript学习笔记之面向对象编程
- C++之面向对象编程学习笔记
- python学习笔记(三)之面向对象编程
- Python之学习笔记(面向对象编程)
- 学习笔记之JavaSE(10)--面向对象编程1
- 学习笔记之JavaSE(11)--面向对象编程2
- 学习笔记之JavaSE(12)--面向对象编程3
- 学习笔记之JavaSE(13)--面向对象编程4
- 学习笔记之JavaSE(14)--面向对象编程5
- java访问URL
- 单播,组播,多播
- 编写一个程序,把text1.txt中的单词与text2.txt中的单词交互保存到text3.txt中
- 登陆页面实现保存帐号密码功能
- Spring Boot 2.0
- 学习笔记之面向对象编程20(处理流、缓冲流、转换流)
- 安卓平板监听USB插拔
- Java面试题集(116-135)
- string.Format对C#字符串格式化
- html5/Css3 导航样式
- maven项目实战
- drawerlayout
- leetcode 203. Remove Linked List Elements
- 从贝叶斯计算、深度学习、智能投顾看人工智能与区块链技术