java.io输入流--2011年08月30日

 

今日所学很一般,我搜索了一些资料看了以下,经过此次阅读,我又会使用了几个功能,希望在接下来的编程中用到。

 

java.io输入流

 

java.io.InputStream

这是一个抽象类,它定义的方法可以用于以字节流的形式从一个输入源读取数据。

InputStream是面向字节的而不是面向字符的,因此,不能保证通过将字节序列扩宽到char序列中就可以用它安全地读取字符数据。实际上,应当使用DataInputStream的readUTF()方法或readChar()方法,或者使用一个带有合适于输入流数据编码的InputStreamReader来处理字符数据。

java.io.ByteArrayInputStream

InputStream的子类,该类根据向它的某个构造函数传递的一个字节数组返回数据。

如果想再读取数据时感觉这些数据好像来自于文件、通道或套接字,则这个类非常有用,例如rms读取。

这个类支持InputStream的mark()和reset()操作。此流不能对字节数组进行转换,但由于流不复制数据因此可以修改数组中的内容然后再调用了reset()方法之后重新读取,但须注意原始字节数组必须足以容纳所要做的修改时才可以。

java.io.DataInput(interface)

这是一个由类实现的接口,可以从与平台无关的二进制编码中读取字符串和java的基本类型。其中,与平台无关的二进制编码由实现DataOutput接口的类创建。

实现readFully()方法。

java.io.DataInputStream

它是InputStream的子类,实现了DataInput接口的方法,从另一个InputStream中将已编码数据读入一个字节序列。此类实例不仅能直接创建,而且还能有其他不同方法(如javax.microedition.io.Connector的openDataInputStream方法)获得。在这种情况下,openDataInputStream方法返回一个流,从而可以由网络连接读取数据,或者是由利用CLDC通用连接框架可以访问到的其他类型的数据源读取数据。

java.io.Reader

这是一个抽象类,它定义一组方法,这些方法由提供字符输出的子类实现,Reader与InputStream的不同在于,它是以16位Unicode字符形式而不是8位字符工作的。

通过将InputStream与InputStreamReader包装在一起,可以将8位InputStream转换成Unicode字符序列。Reader提供的大多数方法与InputStream相同,只是它的基本传输单位是char而不是byte。

java.io.InputStreamReader

InputStreamReader是Reader的一个子类,它从底层8位输入流读取字节并把它们转换成Unicode字符。将InputStream的字节映射到由InputStreamReader返回的字符,这可以通过构造函数中指定的编码来完成,如果使用的是单参数的构造函数,也可以采用主机平台默认的编码来实现。

可以从系统属性microedition.encoding()方法返回InputStreamReader所用的编码。

java.io.PrintStream

 

PrintStream是OutputStream的子类,它包含一些方法,可在将java基本类型和对象写入一个底层OutputStream前,将它们转换为可打印的形式。经常用于某些不方便捕获异常的位置插入调试和跟踪代码。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值