黑马程序员技术交流社区
标题:
IO谁能在总结一下
[打印本页]
作者:
dmyz3214382
时间:
2016-9-4 17:42
标题:
IO谁能在总结一下
IO谁能在总结一下
作者:
天河边吃紫英
时间:
2016-9-4 18:10
我可以当观众,看哪位大神写的详细点
作者:
q554293427
时间:
2016-9-4 19:58
io 分为字节流和字符流
如果只读或者只写的话,推荐用字符流,因为它是用来读取和写出字符串的
但是并不推荐用字符流来copy文本文件,因为效率比较低,它用BufferedReader读取的时候先将字节读取
转换成字符串。
写的时候用BufferedWriter接收字符串,将字符串转成字节数写入。
这样子效率太低,所以并不推荐,一般就是只读只写的时候用字符流更加方便一点,不过字符流也只能用于文本文件
字节流的应用范围就很广泛了,因为计算机里的所有文件都是字节组成的。
值得注意的一点就是,在读取和写出文本文件的时候要注意编码表的问题
作者:
梦想的小草
时间:
2016-9-4 20:50
O流的概念:
1.IO:input(输入) 和 Output(输出)
2.流:类似于“流水”。线性的,有方向的。
Java中IO流的分类:
广义:
1).输出流:从程序向外部输出数据
2).输入流:从外部程序读取数据
按读写方式分:
1).字节流:可以读写任何文件(包括二进制、文本)
A:输出流:OutputStream(抽象类)
|--FileOutputStream(子类):
输出方法(三种):
1).write(int b):输出一个字节
2).write(byte[]):输出一个字节数组
3).write(byte[],int offset, int len):输入一个字节数组的一部分
其他方法:
4).void close():释放资源
B:输入流:InputStream(抽象类)
|--FileInputStream(子类)
读取方法(两种):
1).int read():读取一个字节。返回值:读取的字节
2).int read(byte[] b):读取一个字节数组,填充数组b,返回值:读取的字节数量
2).字符流:只能读写文本文件
A:输出流:Writer(抽象类)
B:输出流:Reader(抽象类)
FileOutputStream(子类)
1.构造方法:(文件可以不存在,会自动创建)
FileOutputStream(String name):创建一个向具有指定名称的文件中写入数据的输出文件流。
FileOutputStream(File file, boolean append):创建一个向指定File对象表示的文件中写入数据的文件输出流。
FileOutputStream(String name):创建一个向具有指定名称的文件中写入数据的输出文件流。
FileOutputStream(String name, boolean append):创建一个向具有指定name的文件中写入数据的输出文件流。
换行符:
1.在Windows下,换行符:\r\n
2.在Linux:\r
3.在Mac:\n
FileInputStream(字节流)
1.构造方法:(构造时,文件必须要存在,否则运行时异常:FileNotFoundException)
FileInputStream(File file):通过打开一个到实际文件的连接来创建一个FileInputStream,该文件通过文件系统中的 File 对象 file指定。
FileInputStream(String name):通过打开一个到实际文件的连接来创建一个FileInputStream,该文件通过文件系统中的路径名 name 指定。
作者:
gcno93
时间:
2016-9-4 21:29
我也是开贴,也想学io大神发总结
作者:
apolo
时间:
2016-9-4 21:31
虽然还没学到io,但是提前了解一下还是很好的
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2