黑马程序员技术交流社区
标题:
IO流总结(二)
[打印本页]
作者:
sunke1229
时间:
2016-7-20 23:20
标题:
IO流总结(二)
本帖最后由 sunke1229 于 2016-7-20 23:22 编辑
流使用后一定要释放资源
流使用后一定要释放资源
流使用后一定要释放资源
流使用后一定要释放资源
流按流向分为两种:输入流,输出流。
流按操作类型分为两种:字节流,字符流
字节流 : 字节流可以操作任何数据,因为在计算机中任何数据都是以字节的形式存储的
字符流 : 字符流只能操作纯字符数据,比较方便。
字节流的抽象父类: InputStream OutputStream
字符流的抽象父类:Reader Writer
常见流
FileInputStream
FileOutputStream
文件流字节流
**
FileOutputStream fos = new FileOutputStream("bbb.txt",
true
); 追加
int read(byte[] b):一次读取一个字节数组
缓冲流的根本
write(byte[] b):一次写出一个字节数组
缓冲流的根本
BufferedInputStream BufferOutputStream
缓冲字节流
FileReader FileWriter 文件字符流
BufferedReader BufferedWriter 缓冲字符流
BufferedReader 的readLine()
BufferedWriter 的newLine() 写出一个换行
LineNumberReader 行号字符流(只有读,没有Writer)
getLineNumber()和setLineNumber()获取行号
InputStreamReader OutputStreamWriter 字符字节转换流(将字节流通过包装转换为字符流)
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("UTF-8.txt"), "UTF-8"));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("GBK.txt"), "GBK"));
SequenceInputStream序列输入流(只有读,没有OutputStream)
SequenceInputStream sis = new SequenceInputStream(fis1, fis2); //将两个流整合成一个流
将n个流拼成一个流
FileInputStream fis1 = new FileInputStream("a.txt"); //创建输入流对象,关联a.txt
FileInputStream fis2 = new FileInputStream("b.txt"); //创建输入流对象,关联b.txt
FileInputStream fis3 = new FileInputStream("c.txt"); //创建输入流对象,关联c.txt
Vector<InputStream> v = new Vector<>(); //创建vector集合对象
v.add(fis1); //将流对象添加
v.add(fis2);
v.add(fis3);
Enumeration<InputStream> en = v.elements(); //获取枚举引用
SequenceInputStream sis = new SequenceInputStream(en); //传递给SequenceInputStream构造
复制代码
ByteArrayOutputStream ByteArrayInputStream
这个不需要close
该输出流可以向内存中写数据, 把内存当作一个缓冲区, 写出之后可以一次性获取出所有数据
ps:个人感觉就是一个字节数组。。。。
ObjecOutputStream ObjectInputStream 对象输入输出流(将对象序列化和反序列化)
writeObject() readObject()
要写出的对象必须实现Serializable接口才能被序列化
PrintStream字节打印流
PrintWriter字符打印流
只有输出流 没有输入流
println()方法
System.in是InputStream, 标准输入流, 默认可以从键盘输入读取字节数据
System.out是PrintStream, 标准输出流, 默认可以向Console中输出字符和字节数据
DataInputStream DataOutputStream 可以按照基本数据类型大小读写数据
流使用后一定要释放资源
流使用后一定要释放资源
流使用后一定要释放资源
流使用后一定要释放资源
IO.jpg
(59.71 KB, 下载次数: 6)
下载附件
2016-7-20 23:22 上传
作者:
自娱自乐的朋朋
时间:
2016-7-21 00:04
一直搞不懂这个 继续看
作者:
呆呆的小呆
时间:
2016-7-21 01:14
66666666666666
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2