File类
File类是java.io包中很重要的一个类;
● File类的对象可以表示文件,还可以表示目录,在程序中一个File类对象可以代 表一个文件或目录;
● File对象可以对文件或目录的属性进行操作,如:文件名、最后修改日期、文件 大小等;
● File对象无法操作文件的具体数据,即不能直接对文件进行读/写操作。
File类的构造方法
File类
File类的常用方法
输入及输出的概念
输入输出(I/O) 把电脑硬盘上的数据读到程序中,称为输入,即input,进行数据 的read 操作从程序往外部设备写数据,称为输出,即output,进行数据的write 操作
字节流与字符流
从数据流编码格式上划分为
● 字节流
● 字符流
输入流与输出流
● 流按着数据的传输方向分为:
● 输入流:往程序中读叫输入流。
● 输出流:从程序中往外写叫输出流。
● InputStream和OutputStream的子类都是字节流 可以读写二进制文 件,主要处理音频、图片、歌曲、字节流,处理单元 为1个字节。
● Reader和Writer的子类都是字符流 主要处理字符或字符串,字符流处 理单元为1个字符。 字节流将读取到的字节数据,去指定的编码表中获取 对应文字字符。
字节流中常用类
字节输入流 FileInputStream 字节输出流 FileOutputStream
字符流中常用类 字符输入流 FileReader 字符输出流 FileWriter
输入输出字节流
●InputStream的基本方法 读取一个字节并以整数的形式返回(0~255),如果返回-1已到输入流的末尾。 i nt read() throws IOException 读取一系列字节并存储到一个数组buffer, 返回实际读取的字节数,如果读取前已到输入流的 末尾返回-1 i nt read(byte[] buffer) throws IOException 关闭流释放内存资源 void close() throws IOException
● OutputStream的基本方法 向输出流中写入一个字节数据,该字节数据为参数b的低8位 void write(int b) throws IOException 将一个字节类型的数组中的从指定位置(off)开始的 len个字节写入到输出流 void write(byte[] b, int off, int len) throws IOException 关闭流释放内存资源 void close() throws IOException
节点流与处理流
● 根据封装类型不同流又分为 节点流 处理流
● 节点流: 如果流封装的是某种特定的数据源,如文件、字符串、字符串数组等, 则称为节点流。
● 处理流: 如果流封装的是其它流对象,称为处理流。 处理流提供了缓冲功能, 提高读写效率,同时增加了一些新的方法
● 节点流中常用类 字节输入流 FileInputStream 字节输出流 FileOutputStream 字符输入流 FileReader 字符输出流 FileWriter
● 处理流中常用类 缓冲字节输出流 BufferedOutputStream 缓冲字节输入流 BufferedInputStream 缓冲字符输入流 BufferedReader 缓冲字符输出流 BufferedWriter
输入输出字符流
●Reader 的基本方法 读取一个字符并以整数的形式返回, 如果返回-1已到输入流的末尾。 int read() throws IOException 读取一系列字符并存储到一个数组buffer, 返回实际读取的字符数,如果读取前 已到输入流的末尾返回-1 int read( char[] cbuf) throws IOException 关闭void close() throws IOException
• Writer 的基本方法 向输出流中写入一个字符数据,该字节数据为参数b的16位 void write(int c) throws IOException 一个字符类型的数组中的数据写入输出流 void write( char[] cbuf) throws IOException 将一个字符类型的数组中的从指定位置(off set)开始的 length个字符写入到 输出流 void write( char[] cbuf, int off set, int length) throws IOException 关闭void close() throws IOException
对象输入输出流--对象序列化
● 对象的寿命通常随着生成该对象的程序的终止而终止。 有时候,可能需 要将对象的状态保存下来,在需要时再将对象恢复。
● 对象的输入输出流 : 主要的作用是用于写入对象信息与读取对象信息。 对象信息 一旦写到文 件上那么对象的信息就可以做到持久化了. 对象的输出流:ObjectOutputStream 对象的输入流:ObjectInputStream
● 在ObjectInputStream 中用readObject()方法可以直接读取一个对象, ObjectOutputStream中用writeObject()方法可以直接将对象保存到输出流中