- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《JAVA简明教程》chap10
《JAVA简明教程》chap10
第十章 输入输出流类
在第六章中我们介绍了简单的输入输出方法,包括标准输入输出和文件输出的例子。输入输出是个大课题,掌握了输入输出方法可使编程解决的问题范围大大地扩展。Java设计者编制了数量众多的输入输出流类,为输入输出提供统一的接口,保证了程序对设备和平台的无关性,方便了客户程序员能够集中精力解决自己程序中的问题。
输入输出是个复杂的问题,可能有不同的输出源控制台、文件、网络数据源等,可以是不同的信息流如简单文本、数值数据、二进制字节流、字符流等。因此,为输入输出而声明的预制类种类繁多,Java1.1版又比1.0版增加了许多类。这使初学者感到困惑和不知何从下手。所有我在第六章先介绍一点简单的输入输出,然后在这一章再深入分析不同的输入输出类的方法和用途。
10.1 字节流输入输出
字节流输入输出类Stream是在Java1.0就建立了,都封装在java.io包中。
输入流类InputStream
输入流类InputStream是各种输入流类的根,由它派生的类都以XXXInputStream方法命名。因此我们可以通过名字初步了解该类的含义。它派生的子类有
ByteArrayInputStream 字节数组输入流
StringBufferInputStream 字符串输入流
SequenceInputStream 顺序输入流
FilterInputStream 过滤器输入流
PipedInputStream 管道输入流
FileInputStream 文件输入流
ObjectInputStream 对象输入流
其中FileInputStream和ObjectInputStream我们将详细讨论,FilterInputStream类又派生了许多子类,其中包含缓冲区输入流我们将用到它。
InputStream类是抽象类,有一个抽象方法abstrct int read()从流中读入一个字节(返回读入的字节值),读入失败时返回-1。它另有两个重载的方法用来读到字节数组中:
int read (byte[])
int read (byte[],offset, length) 指定放置数据的起始位置
返回的是读入字节的个数。
InputStream类的其他方法是
long skip(long n) 把指针(指向当前读取位置的变量long)后移n个字节
int available() 取得流中可以读取的字符数
void close() 关闭流
void mark(int readlimit) 在当前位置设置一个标记
void reset() 返回文件头或上一个标记(如果设置了)
boolean markSupported 测试流是否支持设置标记
InputStream家族的类都继承这些方法,当然它们可以增加(或重载)自己的方法。
输出流类OutputStream
OutputStream是所有输出流类的根,由OutputStream派生的子类有
ByteArrayOutputStream 字节数组输出流
StringBufferOutputStream 字符串输出流
SequenceOutputStream 顺序输出流
FilterOutputStream 过滤器输出流
PipedOutputStream 管道输出流
FileOutputStream 文件输出流
ObjectOutputStream 对象输出流
由其中的FilterOutputStream类派生的子类PrintStream, BufferdOutputStream和DataOutputStream需要关注。与read()方法相对应,OutputStream有三个write方法把字节或字节数组写入流中,还有一个close()和flush():
abstract void write(int)
void write(byte[])
void write(byte[],offset, length)
void close() 关闭流
void flush() 清空流
输入输出流中的方法都是public的,并且都带有异常规范throws java.io.IOException。我们在应用中我们必须使用try-catch结构。
PrintStream类是我们熟悉的,System.out就是一个PrintStre
您可能关注的文档
最近下载
- 浙江省七彩阳光新高考研究联盟2024-2025学年高二上学期11月期中考试语文试题 含解析.docx VIP
- 《企业内部控制问题研究—以天方医药为例(论文)》11000字.docx VIP
- 双特变速器培训.pptx
- 助产技术平产接生教案.pdf VIP
- 浙江省七彩阳光新高考研究联盟2024-2025学年高二上学期11月期中联考数学试题含解析.docx VIP
- 青岛地铁笔试历年真题.pdf
- 从农业大国到农业强国.doc VIP
- 上海市虹口区新复兴中学2024—2025学年上学期期中考试九年级数学试卷.docx VIP
- 浙江省七彩阳光新高考研究联盟2024-2025学年高二上学期11月期中联考化学试题含解析.pdf VIP
- 浙江省七彩阳光新高考研究联盟2024-2025学年高二上学期11月期中物理试题含解析.docx VIP
原创力文档


文档评论(0)