这篇文章给大家介绍怎么浅析Java的流,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
浅析Java的流
由于手头有个项目需要用的Java的输入输出操作, 所以,啃了几天书,对Java的流技术有些了解,不过,还是有很多不是很明白,下面是我看书整理的一些笔记,严格的说应该不是原创,我贴出来只是希望对大家有一些帮助
XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" />
1、Java拥有一个完整的流类型,总数超过60,而四个抽象类构成了这些类的基础
InputStream和OutputStream读写以单字节为基础的字节数据流;
Reader和Writer读写以双字节的Unicode字符为基础的字节数据流;
2、二进制数据的读写
DataInputStream和DataOutputStream
可以完成对所有基本Java类型的读写;
FileInputStream和FileOutputStream
对一个磁盘文件涉及的数据流进行输入输出处理,是字节级的读写操作;
3、Java的流类型中按职责分有两类:
(1)从文件或者一些特殊地方读入字节数据(如FileInputStream);
(2)把这些字节数据“组装”成更有用的数据类型(如DataInputStream、PrintWriter)
要完成具体操作时,需要对流进行组装处理
4、Java的流不具备预读和缓冲功能,需要额外处理
BufferInputStram对流进行缓冲处理;
PushbackInputStream对流进行预读处理;
5、RandomAccessfile随机存取文件,这个类同时实现了DataInput和DataOutput;
6、文本流,即通过主机环境的工具,人眼能够辨别的文件内容
由于windows的字串写入是ASCII格式的,将Unicode编码写进一个文本文件,用主机环境的工具,人眼无法辨别文件内容,Java提供一套流过滤器弥补Unicode编码和本机操作系统采用字符编码的裂缝。
7、InputStreamReader 特殊的编码方案输入字节流转换为Unicode字符;这个类采用主机默认编码,在windows中使用ISO 8859-1编码,即“ASNI”编码;
OutputStreamWriter 把Unicode字符流转换为特殊的编码方案字节流
8、FileReader和FileWriter
对磁盘文件进行读写,已经弥补了Unicode编码和本机编码的裂缝,可以直接使用
9、写文本输出:
二进制写入数据:DataOutputStream;
文本格式写入数据:PrintWriter;
读文本输入:
二进制读入数据:DataInputStream;
文本格式读入数据:BufferReader;
10、其他一些流
如:ZipInputStream和ZipOutputStream
关于怎么浅析Java的流就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。