标签:files string close output 最好 字符流 对象数组 reader available
字节流与字符流
操作流程
1.使用File类打开一个文件
2.通过字节流或者字符流的子类。指定输出的位置。
3.进行读/写操作
4.关闭输入/出
字节流与字符流
在java.io包中操作文件内容主要有两大类:字节流字符流。两大类分为输入和输出操作,在字节流中输出数据主要是OutputStream完成,输入使用InputStream,在字符流冲输出主要是使用Writer类完成,输入主要是Reader完成
字节流
字节流主要是操作byte类型数据,以byte数组为准,主要操作类是OutputStream和InputSream
字节输出流:OutputStream
字节输入流:InputStream
InputStream
常用方法
Public int available():得到输入文件的大小
Public void close():关闭输入流
Public int read(bytr []b):将内容读到数组中,同时返回读入的个数
File类常用操作
(1)创建文件
可以使用 createNewFille() 创建一个新文件。
注意:
Windows 中使用反斜杠表示目录的分隔符""。
Linux 中使用正斜杠表示目录的分隔符"/"。
最好的做法是使用 File.separator 静态常量,可以根据所在操作系统选取对应的分隔符。
(2)删除文件
可以使用 delete() 删除一个文件。
一般删除文件前,最好先使用 exists() 判断一下文件是否存在。
(3)创建文件夹
可以使用 mkdir() 来创建文件夹,但是如果要创建的目录的父路径不存在,则无法创建成功。
如果要解决这个问题,可以使用 mkdirs(),当父路径不存在时,会连同上级目录都一并创建。
(4)列出指定目录全部文件
File中给出了两种列出文件夹内容的方法:
list(): 列出全部名称,返回一个字符串数组。
listFiles(): 列出完整的路径,返回一个File对象数组。
(5)删除目录
可以使用 delete() 来删除目录。
需要注意的是,如果这个目录不为空,直接用 delete() 删除会失败。
InputStream是一个抽象类。要想实例化使用需要用子类FileInputStream;
InputStream output=null ;
Input=new FileInputStream(f);
OutputStream
常用方法
Public void close():关闭输出流
Public void flush():刷新缓冲区
Public void write(byte[] b):讲一个byte数组写入数据流
Public void write(byte[] b,int off,int len):将一个指定byte数组写入数据流
字符流
字符输出流:Writer
字符输入流:Reader
Writer
其本身也是抽象类 要想实现 使用FileWriter
常用方法
Public abstract void close():关闭输出流
Public void writer(String str):将字符串输出
Reader
其本身也是抽象类 要想实现 使用FileReader
常用方法
Public abstract void close():关闭输出流
Public int read():读取单个字符
Public int read(char[] buf):内容读到字符组当中,返回读入的长度
学习总结
内容非常多,但是不同的内容有相同之处,所以老师说的很快,还需要自己多理解。
标签:files string close output 最好 字符流 对象数组 reader available
原文地址:https://www.cnblogs.com/zuoshuai/p/11783705.html