黑马程序员技术交流社区

标题: IO的几个类区别 [打印本页]

作者: 李娟    时间: 2011-12-20 14:17
标题: IO的几个类区别
本帖最后由 李娟 于 2011-12-22 09:24 编辑

比如Reader,Writer,InputStream,OutputStream,FileInputStream,BufferedWriter,RandomAccessInputStream,PrintWriter,PrintStream等几个IO中读写文件类的区别、用法是什么?
作者: 海中的游弋草    时间: 2011-12-20 14:44
java中的流从某种角度可以分为两类:字节流和字符流,字节流处理的对象是字节,而字符流处理的对象是字符,字节流中低级流是InputStream/OutputStresm,而字符流中的低级流是Reader/Writer,字符流往往提供了更好的方法,那么如何把字节流转换为字符流以达到字符流操作的好处就要用到字节流转向字符流的渠道:OutputStreamWriter和InputStreamReader
java的一个字符(char)是16bit的,一个BYTE是8bit的
PrintStrean是写入一串8bit的数据的,也就是说PrintStream是用来操作byte
PrintWriter是写入一串16bit的数据的,也就是说PrintWriter是用来操作Unicode
String缺省是用UNICODE编码,是16bit的。因此用PrintWriter写入的字符串,跨平台性好一些吧。
FileOutputStream 将二进制数据写入文件,DataOutputStream 可连接到一个 FileOutputStream 上,便于写各种基本类型的数据。
FileInputStram 将二进制文件的数据读入程序,DataInputStream 可连接到一个 FileInputStream 上,便于读取各种类型的数据。
BufferedOutputStream 是缓冲流用于写入文件
BufferedInputStream 是缓冲流用于从文件中读出


作者: 刘博    时间: 2011-12-20 14:52
这个问题太强悍了````Reader和Writer是字符流,InputStream和OutputStream是字节流,剩下的都是他们的子类,
末尾跟着什么的就是什么的子类.你要问都怎么用,这个还没法回,自己看视频吧.
作者: 李娟    时间: 2011-12-20 15:02
海中的游弋草 发表于 2011-12-20 14:44
java中的流从某种角度可以分为两类:字节流和字符流,字节流处理的对象是字节,而字符流处理的对象是字符, ...

您这个回答是我想要的,谢谢:P




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2