jsenter
导航
BlogJava
首页
新随笔
联系
聚合
管理
<
2005年3月
>
日
一
二
三
四
五
六
27
28
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
统计
随笔 - 6
文章 - 0
评论 - 4
引用 - 0
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(1)
给我留言
查看公开留言
查看私人留言
随笔分类
JAVA(5)
(rss)
MySQL数据库(1)
(rss)
WEB编程技术
(rss)
随笔档案
2005年4月 (1)
2005年3月 (5)
搜索
最新评论
1. re: JAVA授权事件模型讲解(原创)
我说的是:
授权事件模型与委托事情模型!
--zorrowei
2. re: JAVA授权事件模型讲解(原创)
两者是一回事情吗?小可不清楚的说~!
--zorrowei
3. re: JAVA授权事件模型讲解(原创)
谢谢提醒啊,原来我怕别人看的累,所以搞大点的字,
已经改过来了!不行的话还请再提醒!
--李贝
4. re: JAVA授权事件模型讲解(原创)
字体太大, 麻烦调整一下!
--dudu
阅读排行榜
1. JAVA授权事件模型讲解(原创)(1368)
2. J2EE学习之-搭建开发平台(1249)
3. JBuilder 9 Enterprise Edition添加加mysql驱动(956)
4. JAVA的IO学习全面讲解。(855)
5. MySQL使用入门篇 - 安装及一些基本操作。(786)
评论排行榜
1. JAVA授权事件模型讲解(原创)(4)
2. JAVA - IO包的学习引导文章(摘抄)(0)
3. JBuilder 9 Enterprise Edition添加加mysql驱动(0)
4. MySQL使用入门篇 - 安装及一些基本操作。(0)
5. J2EE学习之-搭建开发平台(0)
JAVA - IO包的学习引导文章(摘抄)
什么是IO
IO(Input/Output)是计算机输出/输出的接口。Java的核心库java.io提供了全面的IO接口,包括:文件读写,标准设备输出等等。Java中IO是以流为基础进行输入输出的,所有数据被串行化写入输出流,或者从输入流读入。此外,Java也对块传输提供支持,在核心库 java.nio中采用的便是块IO。关于NIO我们在后面还有专门的讨论。
流IO的好处是简单易用,缺点是效率较低。块IO效率很高,但编程比较复杂。
Java IO模型
Java的IO模型设计非常优秀,它使用Decorator模式,按功能划分Stream,您可以动态装配这些Stream,以便获得您需要的功能。例如,您需要一个具有缓冲的文件输入流,则应当组合使用FileInputStream和BufferedInputStream。
Java的IO体系分Input/Output和Reader/Writer两类,区别在于Reader/Writer在读写文本时能自动转换内码。基本上,所有的IO类都是配对的,即有XxxInput就有一个对应的XxxOutput。
Java IO教程
如果您对
Decorator模式
非常了解,就能轻易地看出Java的IO类结构:根接口是InputStream/OutputStream,充当数据源的IO类有 FileInputStream/FileOutputStream, ByteArrayInputStream/ByteArrayOutputStream等,充当装饰功能的IO类有 BufferedInputStream/BufferedOutputStream, DataInputStream/DataOutputStream等,它们都是继承装饰接口 FilterInputStream/FilterOutputStream。使用IO时,首先创建一个数据源IO,然后根据需要的功能创建装饰类IO,其构造函数的参数为已创建的数据源IO。我们以创建一个具有缓冲的文件输入流为例,假定需要从磁盘读取文件“C:\log.txt”:
// 创建一个FileInputStream:
FileInputStream fileInput = new FileInputStream("C:\\log.txt");
// 创建一个BufferedInputStream:
BufferedInputStream bufferedInput = new BufferedInputStream(fileInput);
// 现在得到的bufferedInput即是具有缓冲的文件输入流
或者进一步简写如下:
InputStream input = new BufferedInputStream(
new FileInputStream("C:\\log.txt"));
// 现在得到的input即是具有缓冲的文件输入流
在您对Java的IO有了总体了解后,我们推荐您看看教程
Introduction to Java I/O
和
I/O: Reading and Writing
。
posted on 2005-03-27 10:30
李贝
阅读(595)
评论(0)
编辑
收藏
所属分类:
JAVA
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
相关文章:
JAVA的IO学习全面讲解。
JAVA授权事件模型讲解(原创)
JAVA - IO包的学习引导文章(摘抄)
JBuilder 9 Enterprise Edition添加加mysql驱动
J2EE学习之-搭建开发平台
Powered by:
BlogJava
Copyright © 李贝