当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:17:00  来源:本站整理

通过FilterInputStream从InputStream里读入数据[Java编程]

赞助商链接



  本文“通过FilterInputStream从InputStream里读入数据[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

FilterInputStream类要完成两件全然差别的事情.此中,DataInputStream答应我们读取差别的基本范例数据以及String对象(全部办法都以“read”开首,比方readByte(),readFloat()等等).伴随对应的DataOutputStream,我们可通过数据“流”将基本范例的数据从一个地方搬到另一个地方.这些“地方”是由表10.1总结的那些类决意的.若读取块内的数据,并自己举行解析,就不需求用到DataInputStream.但在其他很多情形下,我们普通都想用它对自己读入的数据举行自动格局化.

剩下的类用于改正InputStream的内部行为方法:能否举行缓冲,能否跟踪自己读入的数据行,以及能否可以推回一个字符等等.后两种类看起来分外象供应对构建一个编译器的支持(换言之,增添它们为了支持Java编译器的构建),所以在通例编程中普通都用不着它们.
大概几近每次都要缓冲自己的输入,无论衔接的是哪个IO设备.所以IO库最明智的做法就是将未缓冲输入作为一种特别情形处理,同时将缓冲输入采取为尺度做法.

表10.3 FilterInputStream的范例

Class

Function

Constructor Arguments

How to use it

Data-InputStream

Used in concert with DataOutputStream, so you can read primitives (int, char, long, etc.) from a stream in a portable fashion.

InputStream

Contains a full interface to allow you to read primitive types.

Buffered-InputStream

Use this to prevent a physical read every time you want more data. You’re saying “Use a buffer.”

InputStream, with optional buffer size.

This doesn’t provide an interface per se, just a requirement that a buffer be used. Attach an interface object.

LineNumber-InputStream

Keeps track of line numbers in the input stream; you can call getLineNumber() and setLineNumber(int).

InputStream

This just adds line numbering, so you’ll probably attach an interface object.

Pushback-InputStream

Has a one byte push-back buffer so that you can push back the last character read.

InputStream

Generally used in the scanner for a compiler and probably included because the Java compiler needed it. You probably won’t use this.


类 功效 构建器参数/若何利用

DataInputStream 与DataOutputStream结合利用,使自己能以机动方法读取一个流中的基本数据范例(int,char,long等等) InputStream/包含了一个完好的接口,以便读取基本数据范例
BufferedInputStream 避免每次想要更大都据时都举行物理性的读取,奉告它“请先在缓冲区里找” InputStream,没有可选的缓冲区大小/本身并不能供应一个接口,只是发出利用缓冲区的要求.要求同一个接口对象衔接到一同
LineNumberInputStream 跟踪输入流中的行号;可调用getLineNumber()以及setLineNumber(int) 只是增添对数据行编号的本领,所以大概需求同一个真正的接口对象衔接
PushbackInputStream 有一个字节的后推缓冲区,以便后推读入的上一个字符 InputStream/普通由编译器在扫描器中利用,因为Java编译器需求它.普通不在自己的代码中利用.


  以上是“通过FilterInputStream从InputStream里读入数据[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 通过FilterInputStream从InputStream里读入数据
  • 通过FilterOutputStream向OutputStream里写入数据
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .