java学习笔记第25天2018.09.27
程序员文章站
2022-07-15 08:13:59
...
IO:
File类:
描述文件或者目录的相关信息。
创建文件的方法:
createNewFile(): boolean
创建目录:
mkdir(): boolean
mkdirs(): boolean
列出:
String[] list()
File[] listFiles()
过滤器:
String[] list(FilenameFilter name)
boolean accept(File dir, String name)
dir:当前要过滤的目录
name:当前要过滤的目录其中的一个文件或者目录名
File[] listFiles(FilenameFilter name)
File[] listFiles(FileFilter pathname)
boolean accept(File pathname)
pathname:当前要过滤的目录+文件或者目录名
按照数据的流动方向:
输入流: 应用程序读取数据—read
输出流: 应用程序向某一个地方写入数据 —write
按照操作的数据:
字节流:图片,视频,音频等二进制文件
字符流:文本类型文件
字节流:
输出流:
OutputStream:抽象类
:write(int)
:write(byte[])
:write(byte[] ,index,length)
:close()
FileOutputStream(目的地)
步骤:
1.创建输出流对象,并指定目的地
2.向目的地中写入数据
3.关闭输出流
输入流:
InputStream:抽象类
:int read()
: int read(byte[])
: int read(byte[] ,index,length)
:close()
FileInputStream(源头地址)
步骤:
1.创建输入流对象,并指定数据源
2.读取数据
3.关闭输入流
字节缓冲流:
BufferedInputStream(InputStream)
BufferedOutputStream(OutputStream)
int available():输入流中的方法,可以获取未读取数据的字节个数
字符流:
文本类型文件 txt
抽象类
输入流:Reader
read(),close()
---FileReader
输出流:Writer
write(),close
---FileWriter
转换流:
InputStreamReader(InputStream ,CharSetName)
OutputStreamWriter(OutputStream ,CharSetName)
当读和写两遍的编码格式不一致时
OutputStreamWriter是字符流,记得要刷新或者是关闭流
模板代码:
字符输入流
FileReader fr = new FileReader("数据源");
char[] ch = new char[1024];
int len = 0;
while((len = fr.read(ch)) != -1){
.....
}
fr.close();
字符输出流:
FileWriter fw = new FileWriter("目的地");
fw.write("...............");
//fw.flush();
fw.close();
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
/*
* 演示使用字符流复制文件
*/
public class Demo05 {
public static void main(String[] args) throws IOException {
// 创建输入流对象
FileReader fil = new FileReader("d:\\1.txt");
// 创建输出流对象
FileWriter fol = new FileWriter("d:\\复制.txt");
char[] ch = new char[1024];
int len = 0;
while ((len = fil.read(ch)) != -1) {
fol.write(ch, 0, len);
fol.flush();
}
fil.close();
fol.close();
}
}
上一篇: JavaSE知识点总结(一)
下一篇: 学习第24天