一、I/O流
1.File
1.1File类概述
它是文件和目录路径名的抽象表示形式。
通过File类可以查看文件的基本信息。
1.2.实例化对象
File f = new File(String pathname) pathname为给定的路径名
1.3.File类常用方法
createNewFile() 当文件不存在时,创建一个该路径名的新空文件
isDirectory() 测试路径名是否为目录
exists() 测试路径名是否存在
isFile() 测试路径名是否为文件
getAbsolutePath() 返回绝对路径名字符串
mkdir() 创建一个文件夹
mkdirs() 创建一个文件夹和它的所有父文件夹。
2.流的概述
2.1.流(Stream):
是一种抽象概念,是对数据传输的总称。
也就是说数据在设备间的传输称为流,流的本质是数据传输
2.2分类
按照数据的流向
输入流:读数据
输出流:写数据
按照数据类型来分
字节流
字符流
2.3.IO流的使用场景
如果操作的是纯文本文件,优先使用字符流
如果操作的是图片、视频、音频等二进制文件。优先使用字节流
如果不确定文件类型,优先使用字节流。字节流是万能的流
3.字节流
InputStream 表示字节输入流(读);是所有字节输入流的类的超类
OutputStream 表示字节输出流(写);是所有字节输出流的类的超类
3.1.读写字节流
3.1.1读
FileInputStream(String name) 打开与实际文件的连接,该文件由文件系统中的路径名name命名
read() 一次读一个字节
read(byte[] b) 一次读一个字节数组,读取最多b.length个字节的数据
例:
InputStream in = new FileOutputStream(”String name“); //创建字节输入流对象
byte[] b = new byte[5];
int read = in.read( b ); //调用字节输入流对象的读数据方法
if ( in != null ) in.close() ; //关闭流;释放资源
3.1.1写
FileOutputStream(String name,boolean append)
用来创建一个文件并向文件中写数据。如果第二个参数为true ,则字节将写入文件的末尾
write() 将指定的字节写入此文件,一次写一个字节数据
write(byte[] b, int off, int len) 一次写一个字节数组的一部分
3.2.关闭流的方法
close() 关闭流。一旦关闭,就不能再写数据
注意:流一旦创建,就必须关闭!!