J2SE知识点摘记(十三)

时间:2021-03-24 17:27:20

1、        字节流

InputStream(输入字节流)是一个定义了java流式字节流输入模式的抽象类.该类的所有方法在出错时都会引发一个IOExcepiton异常.

Void close()          关闭输入流.关闭之后若再读取则会产生IOException异常.

Void reset()           重新设置输入指针到先前设置的表之处.

Int read()                  如果下一个字节可读则返回一个整型,遇到文件尾时返回-1

Int read(byte buffer[])           试图读取buffer.length个字节到buffer中,并返回书记成功 读取的字节数.

Int read(byte buffer[] ,int offset,int number)    试图读取buffer中从buffer[offset]开始的numBytes个字节,返回实际读取的字节数.

OutputStream(输出字节流)是定义了流式字节输出模式的抽象类.

Void close()          关闭输出流.关闭之后若再读取则会产生IOException异常.

Void write(int b)   向输出流写入单个字节.注意参数是一个整型数,它允许设计者不必把参数转换成字符型就可以调用write()方法.

Void write(byte buffer[])         向一个输出流写一个完整的字节数组.

Void write(byute buffer[],int offset,int numByte)  写数组buffer以buffer[offset]为起点的numBytes个字节区域内的内容.

FileInputStream(文件输入流)类创建一个能从文件读取字节的InputStream类,它的两个常用构造方法:

FileInputStream(String filepath)

FileInputStream(File fileObj)

这两个构造方法都能引发FileNotFoundException异常.这里filepath是文件的绝对路径,fileObj是描述该文件的File对象.

例子:

InputStream f0=new FileInputStream("c:\\test.txt");

或者

File f=new File("c:\\test.txt");

InputStream f1=new FileInputStream(f);

FileOutputStream(文件输出流)创建了一个可以向文件写入字节的类OutputStream,它常用的构造方法:

FileOutputStream(String filepath)

FileOutputStream(File fileObj)

FileoutputStream(String filePath,boolean append(

如果append为ture,文件则已设置搜索路径模式打开.FileOutputStream的创建不依于文件是否存在.在创建对象时,FileOutputStream会在打开输出文件之前就创建它.在这种情况下如果试图打开一个只读文件,则会引发一个IOException异常.

注意:printStackTrace()方法的意思是:在命令行打印异常信息在程序中出错的位置及原因.

通过File类的对象去实例化OutputStream的对象,此时是通过其子类FileOutputStream实例化的OutputStream对象,属于对象的向上转型.

因为字节流主要以操作byte数组为主,所以通过String类中的getByte()方法,将字符串转化成一个byte数组.

通过File类的对象去实例化InputStream的对象,此时是通过其子类FileInputStream实例化的InputStream对象,属于对象的向上转型.

因为字节流主要以操作byte数组为主,所以声明一个1024大小的byte数组,此数组用于存放读入的数据.

最后将byte数组转成字符串输出.