复制Java文件(改进版)
复制Java文件(改进版)
- 需求:把模块目录下的"D:\s\java.txt"复制到模块目录下的"D:\item\Hellow\javasss.txt"
- FileReader的构造方法
方法名 | 说明 |
---|---|
FileReader(File file); | 创建一个新的 FileReader ,给出 File读取。 |
FileReader(FileDescriptor fd); | 创建一个新的 FileReader ,给定 FileDescriptor读取 |
FileReader(String fileName); | 创建一个新的 FileReader ,给定要读取的文件的名称 |
- FileWriter构造方法
方法名 | 说明 |
---|---|
FileWriter(File file); | 给一个File对象构造一个FileWriter对象 |
FileWriter(File file, boolean append); | 给一个File对象构造一个FileWriter对象 |
FileWriter(FileDescriptor fd); | 构造与文件描述符关联的FileWriter对象 |
FileWriter(String fileName); | 构造一个给定文件名的FileWriter对象。 |
FileWriter(String fileName, boolean append); | 构造一个FileWriter对象,给出一个带有布尔值的文件名,表示是否附加写入的数据 |
- 分析:
- 转换流的名字比较长,而我们常见的操作都是按照本地默认编码实现的,所以,为了简化书写,转换流提供了对应的子类
FileReader:用于读取字符文件的便捷类
- FileWriter:用于写入字符文件的便捷类
- 复制方面:
数据源----FileReader
目的地----FileWriter
- 思路:
- 根据数据源创建字符输入流对象
- 根据目的地创建字符输出流对象
- 读写数据,复制文件
- 释放资源
以图文和代码形式讲解内容
图文:
代码:
package Demo;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;public class Demo { public static void main(String[] args) throws IOException { //根据数据源创建字符输入流对象 FileReader fr = new FileReader("D:\\s\\java.txt"); //FileWriter:用于写入字符文件的便捷类 FileWriter fw = new FileWriter("D:\\item\\Hellow\\javasss.txt"); //复制文件 两种方法 //方法1 int by; while ((by = fr.read()) != -1) { fw.write(by); } //释放资源 fr.close(); fw.close(); }}
输出的内容: