输入输出流
1.File类
File对象的构造方法
File(String filename);
File(String directoryPath ,String filename);
File(String dir,String filename);
目录
File对象调用方法public boolean mkdir()创建一个目录,如果创建成功返回ture,否则false。
2.文件字节输入流
可以使用FileInputStream(文件字节输入流),该类实例方法是从InputStream类继承来的。
构造方法:
FileInputStream (String name);
FileInputStream(File file);
注: FileInputStream流顺序读取文件,只要不关闭流,每次调用read方法就顺序读取源中其余内容,直到源的末尾或流被关闭。
3.文件字节输出流
使用FileOutputStream(文件字节输出流),该类实例方法是从OutputStream类继承来的。
构造方法:
FileOutputStream (String name);
FileOutputStream(File file);
4.文件字符输入,输出流
使用FileReader,FileWriter字符流(文件字符输入,输出流),分别是Reader和Writer的子类。
构造方法分别是:
FileReader(String filename); FileReader(File filename);
FileWriter(String filename); FileWriter(File filename);
FileWriter(String filename,boolean append);
FileWriter(File filename,boolean append);
5.缓冲流
BufferedReader和BufferedWriter类创建的对象称为缓冲输入,输出流,而二者增强了读写文件的能力。
BufferedReader和BufferedWriter的构造方法分别是:
BufferedReader(String in);
BufferedWriter(String out);
6.随机流
RandomAccessFile类创建的流称作随机流,与前面输入输出不同的是它既不是InputStream的子类也不是OutputStream的子类。但 RandomAccessFile类创建的流的指向既可以作为流的源,也可作为流的目的地。
RandomAccessFile的两种构造方法:
- RandomAccessFile(String name,String mode)参数name用来确定一个文件名,给出创建流的源,也是流目的地,参数mode取r(只读)或rw(可读写),决定创建的流对文件的访问权利。
- RandomAccessFile(File file,String mode)参数file是File的一个对象,给出创建流的源,也是流目的地,参数mode取r(只读)或rw(可读写),决定创建的流对文件的访问权利。
7.数组流
字节数组输入流ByteArrayInputStream和输出流ByteArrayOutputStream分别使用字节数组作为流的源和目的地
构造方法:
ByteArrayInputStream(byte[ ] buf);
ByteArrayOutputStream(byte[ ] buf ,int offset,int length);
第一个构造方法构造的字节数组流的的源是参数buf指定数组的 全 部 字节单元,第二个构造方法构造的字节数组的源是buf指定的 数组从offset处按顺序取的length个字节单元。
8.数据流
DataInputStream和DataOutputStream类创建的对象称为数据输入流和数据输出流。
两种构造方法:
- DataInputStream(InputStream in); 创建的数据输入流指向一个参数in指向的底层输入流。
- DataOutputStream(OutputStream out);创建的数据流输出指向一个 由参宿Out指定的底层输出流。
9.对象流
ObjectInputStream和ObjectOutputStream分别是InputStream和ObjectInputStream的子类,ObjectInputStream和ObjectOutputStream类创建的对象称为对象输入流对象输出流。
构造方法:
ObjectInputStream(InputStream in ):
ObjectOutputStream(OutputStream out);
ObjectOutputStream(OutputStream out); 的指向应当是一个输出流对象,因此当准备将一个对象写入到文件时,首先用OutputStream创建一个文件输出流。