文档详情

Java大学实用教程--第9章节.ppt

发布:2018-04-02约7.57千字共47页下载文档
文本预览下载声明
与数组字节流对应的是数组字符流:CharArrayReader与CharArrayWriter类,数组字符流分别使用字符数组作为流的源和目标。与数组字节流不同的是,数组字符流的读操作可能发生IOException异常。 在下面的例子7中,我们将Unicode表中的一些字符写入内存,然后再读出。 返回 9.7 字符串流 StringReader使用字符串作为流的源。使用下列构造方法构造字符串输入流对象: public StringReader(String s) 该构造方法构造的输入流指向参数s指定的字符串,字符串输入流调用 public int read() 方法顺序读出源中的一个字符,并返回字符在Unicode表中的位置;调用 public int read(char[] buf,int off,int len) 方法可以顺序地从源中读出参数len指定的字符个数,并将读出的字符存放到参数b指定的数组中,参数off指定数组b存放读出字符的起始位置,该方法返回实际读出的字符个数。 字符串输出流调用下列方法可以向缓冲区写入字符: public void write(int b) public void write(char[ ] b,int off,int len) public void write(String str) public void write(String str,int off,int len) 字符串输出流调用 public String toString() 方法,可以返回输出流写入到缓冲区的全部字符;调用 public void flush() 方法可以刷新缓冲区。 返回 第九章 输入、输出流 ?本章导读 1. 文件 2. 文件字节流 3. 文件字符流 4. 从键盘读取数据 5.缓冲流 6.数组流 7.字符串流 8.数据流 9.管道流 10.对象流 11.序列化与对象克隆 12. 随机读写流 13. 文件锁 当程序需要读取磁盘上的数据或将程序中得到数据存储到磁盘时,就可以使用输入输出流,简称I/O流。I/O流提供一条通道程序,可以使用这条通道读取“源”中的数据,或把数据送到“目的地”。I/O流中的输入流的指向称做源,程序从指向源的输入流中读取源中的数据;输出流的指向称做目的地,程序通过向输出流中写入数据把信息传递到目的地。虽然I/O流经常与磁盘文件存取有关,但是程序的源和目的地也可以是键盘、鼠标、内存或显示器窗口。 Java的I/O流库提供大量的流类(在包java.io中)。其中有4个重要的abstract类: 1.InputStream(字节输入流) 2.Reader(字符输入流) 3.OutputStream(字节输出流) 4.Writer(字符输出流) 其中InputStream 和Reader类为其子类提供了重要的读取数据的read方法,OutputStream和Writer类为其子类提供了重要的写入数据的write方法。我们将陆续介绍它们的子类及用法。 9.1 文件 Java使用File类创建的对象来获取文件本身的一些信息,例如文件所在的目录、文件的长度、文件读写权限等,文件对象并不涉及对文件的读写操作。 创建一个File对象的构造方法有3个: File(String filename); File(String directoryPath,String filename); File(File f, String filename); 其中,filename是文件名字,directoryPath是文件的路径,f是指定成一个目录的文件。 使用File(String filename)创建文件时,该文件被认为是与当前应用程序在同一目录中。 1.文件的属性 经常使用File类的下列方法获取文件本身的一些信息: public String getName() 获取文件的名字。 public boolean canRead() 判断文件是否是可读的。 public boolean canWrite() 判断文件是否可被写入。 public boolean exits() 判断文件是否存在。 public long length() 获取文件的长度(单位是字节)。 public String getAbsolutePath() 获取文件的绝对路径。 public String getParent() 获取文件的父目录。 public boolean isFile() 判断文件是否是一个正常文件,而不是目录。 public
显示全部
相似文档