一:File类
文件和目录路径名的抽象表示形式。 public File(String pathname) public static final String separator public boolean createNewFile() 创建文件 public boolean delete() 删除此抽象路径名表示的文件或目录。 public boolean exists() 测试此抽象路径名表示的文件或目录是否存在。 public long length() 返回由此抽象路径名表示的文件的长度。 public String getAbsolutePath() 返回此抽象路径名的绝对路径名字符串。 public File getParentFile() 获取父目录的File对象 public boolean isDirectory() 测试此File对象表示的是否是一个目录。 public boolean mkdir() 创建此抽象路径名指定的目录。 public boolean mkdirs() 创建此抽象路径名指定的目录,包括所有必需但不存在的父目录。 public File[] listFiles() 列出此目录下的所有文件或目录的File对象(以数组形式表示)二:IO流 (Input/Output流)
流:数据通信信道。 流的分类: 1.按照数据传输方向分:输入流 输出流 (以程序为研究对象) 2.按照数据传输单位分:字节流 字符流 3.按照功能分:节点流 处理流(套接流)三:Java中IO流的祖先类
1.InputStream 字节输入流 public abstract int read() 返回下一个数据字节;如果到达流的末尾,则返回-1。 public int read(byte[] b) 返回读入缓冲区的总字节数;如果到达流的末尾,则返回-1。 public int read(byte[] b,int off,int len)返回读入缓冲区的总字节数;如果到达流的末尾,则返回-1。 以上三个方法在数据读完之前都会阻塞。InputStream的实现类:FileInputStream
FileInputStream(File file) 2.OutputStream 字节输出流 FileOutputStream类 public FileOutputStream(File file) public FileOutputStream(File file,boolean append) public void write(int b) 将指定字节写入此文件输出流。 public void write(byte[] b) 将 b.length 个字节从指定 byte 数组写入此文件输出流中。 public void write(byte[] b,int off,int len)3.Reader 字符输入流
FileReader类 public FileReader(File file) public int read() 读取单个字符。 public int read(char[] cbuf) 将字符读入数组。 public abstract int read(char[] cbuf,int off,int len) 以上三个方法在数据读完之前都会阻塞。如果到达流的末尾,则返回-1。4.Writer 字符输出流
FileWriter类 public FileWriter(File file) public void write(int c) 写入单个字符 public void write(char[] cbuf) 写入字符数组。 write(char[] cbuf,int off,int len) public void write(String str) 写入字符串 write(String str,int off,int len) public abstract void flush() 刷新缓冲流四:单例设计模式 (“懒汉式”、“饿汉式”)
私有化单例类的构造方法。 在类的内部实例化对象(static全局属性)。 提供公开的方法访问类内部实例化的对象。五:简单工厂设计模式
在工厂类中根据传入的参数实例化相应的对象。