文档详情

《第6章IO流(英文版)》公开课件(设计).ppt

发布:2019-11-01约2.04万字共67页下载文档
文本预览下载声明
流的分类 Character File类(6.8.1节) File类的对象主要用来获取文件本身的一些信息,例如文件所在的目录、文件的长度、文件读写权限等,不涉及对文件的读写操作。 构造方法有3个: File(String filename); File(String directoryPath, String filename); File(File f, String filename); 注意: 在Windows环境使用路径时,其分隔符不能是单一的“\”符号,因为符号“\”已经被转义。例如: c:\temp\abc.txt 路径是非法的,系统不会识别,正确的写法应该为: c:\\temp\\abc.txt 文件的属性 canRead(): 文件是否可读;(canWrite()) delete(): 删除文件或目录; exists: 文件或目录是否存在; getName(): 获得文件或目录的名称(不包括路径); isFile(): 连接的是否是文件;(isDirectory()) length(): 文件的大小(byte); getAbsolutePath(): 获得文件的绝对路径; lastModified(): 获取文件的最后修改时间。 目 录 mkdir(): 创建一个目录; listFiles(): 返回目录下的全部File文件; listFiles(FilenameFilter obj): 返回目录下指定类型的所有File文件。 文件的创建与删除 createNewFile(): 创建一个文件对象 File f = new File(“C:\\myletter”, “letter1.txt”); f. createNewFile(); delete(): 删除文件 File f = new File(“C:\\myletter”, “letter1.txt”); f.delete(); int read():从输入流中读一个字节,返回0-255的整数(内容的unicode码)。如果已经到达流末尾而没有可用的字节,则返回值-1。 int read(byte b[]):读取多个字节到数组中。 int read(byte b[], int off, int len):从输入流中读取长度为len的数据,写入数组b中从索引off开始的位置,并返回读取到的字节数。 void close():关闭此输入流。 InputStream的常用子类有: FileInputStream:从某个文件中获得字节。 DataInputStream:允许应用程序以与机器无关方式从底层输入流中读取基本数据类型。 ObjectInputStream:对对象进行反序列化。 ByteArrayInputStream:该类包含一个内部缓冲区,缓冲区中所存储的是从流中读取的字节。 SequenceInputStream FilterInputStream import java.io.*; public class ReadFile { public static void main(String args[ ]) { int b; byte tom[ ]=new byte[25]; try { File f=new File(“chap06//ReadFile.java); FileInputStream in=new FileInputStream(f); //1. 创建输入流 while((b = in.read(tom, 0, 25))!=-1) //2. 使用输入流读 { String s = new String(tom, 0, b); System.out.print(s); } in.close(); //3. 关闭输入流 } catch(IOException e) { System.out.println(File read Error+e); } } } void write(int b):将指定的字节写入此输出流。 void write(byte[] b):将b.length个字节从byte数组写入此输出流。 void w
显示全部
相似文档