AvA 辽宁经济职业技术学院信息系 硕士、副教授陈英 JAVA
流和文件(3) 辽宁经济职业技术学院信息系 硕士、副教授 陈英
AvA 输入翰出方法 方法rd0提供了三种从流中读数据的方法 O int readO:读一个整数 o int read( byte b读多个字节到数组中 o int read (byte, int off, int len); o属于 Outputstream类的方法有 o write (int b):将一个整数输出到流中 o write( byte b):将数组中的数据输出到流中 O write( byte b, int off.int len):将数组b中从off 指定的位置开始len长度的数据输出到流中 JAVA
输入输出方法 方法read()提供了三种从流中读数据的方法. int read():读一个整数 int read(byte b[]):读多个字节到数组中 int read(byte,int off,int len); 属于OutputStream类的方法有: write(int b):将一个整数输出到流中 write(byte b[]):将数组中的数据输出到流中 write(byte b[], int off,int len):将数组b中从off 指定的位置开始len长度的数据输出到流中
AvA 输入翰出方法 o flush:将缓冲区中的数据强制送出 ○ close 0:关闭流 Printstream类 o printIne0不属于 Outputstrea类,它是 Printstream类的子类能提供复杂的输出 O PrintStream类的方法有: o write, flush, checkError,print, printIn, close 0其中 printin可以输出多种形式的数据例如: o printIn(String s), printIn(char c)= JAVA
输入输出方法 flush():将缓冲区中的数据强制送出 close():关闭流. PrintStream类 println()不属于OutputStream类,它是 PrintStream类的子类,能提供复杂的输出 PrintStream类的方法有: write, flush, checkError,print, println,close. 其中println可以输出多种形式的数据.例如: println(String s), println(char c)等
AvA 输入翰出方法 ○只有缓冲区满时,才会将数据送到输出流 O Java在输出数据流中,当对方尚未将数据取走 时程序就会被阻塞 有时要人为地将尚未填满的缓冲区中的数据 送出,使用ushO方法 文件 JAVA
输入输出方法 只有缓冲区满时,才会将数据送到输出流. Java在输出数据流中,当对方尚未将数据取走 时,程序就会被阻塞. 有时要人为地将尚未填满的缓冲区中的数据 送出,使用flush()方法. 文件
鱼文件的翰入翰出 AvA O FileInputStream( String name) ○使用name参数指定的文件路径来创建一个新的 文件输入流。 O FileInputStream(File f) 使用封装进Fil对象中的信息来创建一个新的 文件输入流。 O File OutputStream (String name) ○根据nam字符串创建一个新的文件输出流。路 径名并不是绝对的,它相对于当前工作目录 注:该方法会把已经存在的同名文件删除 JAVA
文件的输入输出 FileInputStream(String name) 使用name参数指定的文件路径来创建一个新的 文件输入流。 FileInputStream(File f) 使用封装进File对象中的信息来创建一个新的 文件输入流。 FileOutputStream(String name) 根据name字符串创建一个新的文件输出流。路 径名并不是绝对的,它相对于当前工作目录。 注:该方法会把已经存在的同名文件删除
JAvA Java. io BufferedInputStream o BufferedInputStream(InputStream in) 使用默认的缓冲大小来创建一个新的缓冲流。 个缓冲输入流从一个流中读取字符但不会 每次都导致设备访问。当缓冲为空时,一个 新的数据块就会被读取到缓冲中。 o BufferedInputStream(InputStream in, int n) 使用用户定义的缓冲大小来创建一个新的缓 冲流。 JAVA
java.io.BufferedInputStream BufferedInputStream(InputStream in) 使用默认的缓冲大小来创建一个新的缓冲流。 一个缓冲输入流从一个流中读取字符但不会 每次都导致设备访问。当缓冲为空时,一个 新的数据块就会被读取到缓冲中。 BufferedInputStream(InputStream in,int n) 使用用户定义的缓冲大小来创建一个新的缓 冲流
S JAvA Java. io. BufferedOutputStream o BufferedOutputStream(OutputStream out) ○使用默认的缓冲大小来创建一个新的缓冲流。 个缓冲输出流会收集被写的字符而不会每 次都导致设备访问。当缓冲已满后,或者流 被清洗,那么数据就会被写访问 o BufferedInputStream(OutputStream out, int 使用用户定义的缓冲大小来创建一个新的缓 冲流。 JAVA
java.io.BufferedOutputStream BufferedOutputStream(OutputStream out) 使用默认的缓冲大小来创建一个新的缓冲流。 一个缓冲输出流会收集被写的字符而不会每 次都导致设备访问。当缓冲已满后,或者流 被清洗,那么数据就会被写访问。 BufferedInputStream(OutputStream out ,int n) 使用用户定义的缓冲大小来创建一个新的缓 冲流
AvA 随机存取文件 O Randomaccess充用于读写一个文件中任 意位置的数据。它实现了 DataInput和 Data Output接口。 p文件需要用随机方法处理 ○文件目录给出个文件的入口,可以随机读取 ○创建一个随机文件 O new RandomAccess File(“ filel. txt”,“r”); ○ new RandomAccess file(“file2txt”,"“rw”); 随机文件可以同时完成读和写操作, ip文件 文件目录 JAVA
随机存取文件 RandomAccessFile流用于读写一个文件中任 意位置的数据。它实现了DataInput和 DataOutput接口。 zip文件需要用随机方法处理 文件目录给出个文件的入口,可以随机读取. 创建一个随机文件 new RandomAccessFile(“file1.txt”, “r”); new RandomAccessFile(“file2.txt”, “rw”); 随机文件可以同时完成读和写操作. zip文件 文件目录
AvA 随机存取文件 磁盘文件可以随机访问,但是来自网络 连接的数据则不可以这么做。 ○打开一个随机访问文件的方法或者是只 读或者是读写。这需要分别把字符串“r” (随机读)或者“rw”(随机读写)作为 构造器的第二个参数。 O RandomAccess file in= new RandomAccess File(“ employee.dar,” O RandomAccess File in Out= new RandomAccess file(“ employee. da”,”r JAVA
随机存取文件 磁盘文件可以随机访问,但是来自网络 连接的数据则不可以这么做。 打开一个随机访问文件的方法或者是只 读或者是读写。这需要分别把字符串“r” (随机读)或者“rw”(随机读写)作为 构造器的第二个参数。 RandomAccessFile in = new RandomAccessFile(“employee.dat”,”r”); RandomAccessFile inOut = new RandomAccessFile(“employee.dat”,”rw”);
AvA 随机存取文件 ○支持随机文件操作的方法: OreadXXX0或 writeXXXO O Bytes0;将指针乡下移动若干字节 Seeks:将指针调到所需位置 OgetFilepointerC:返回指针当前位置 Length:返回文件长度 ○利用seek( long pos)方法查找随机文件中的信息 O例把若干个32位的整数写到一个名为 “temp.dat”的文件中然后利用seek方法,以相 反的顺序再读取这些数据 JAVA
随机存取文件 支持随机文件操作的方法: readXXX()或writeXXX() skipBytes();将指针乡下移动若干字节 seek():将指针调到所需位置 getFilePointer():返回指针当前位置 length():返回文件长度 利用seek(long pos)方法查找随机文件中的信息 例:把若干个32位的整数写到一个名为 “temp.dat”的文件中,然后利用seek方法,以相 反的顺序再读取这些数据