1.Wheel功能。
这个是java中的一个类,作用就是能够通过创建该类的对象,直接输入文件的名字,可以对其读取、写入、拷贝、添加的功能(目前如此,以后会添加功能)。
read(String fileName):需要一个文件的名字作为参数,文件名必须包含其详细路径,将读取该文件中的内容然后以String的形式返回。
write(String fileName,String text):需要一个文件的名字作为参数,文件名必须包含其详细路径,还需要一个写入文件中的String内容。调用该方法后,会在fileName的文件中写入text内容,文件不存在将会创建文件,文件存在将会覆盖里面的内容。
append(String fileName,String text):需要一个文件的名字作为参数,文件名必须包含其详细路径,还需要一个String类型的内容用来添加到文件的末尾(会在原有的基础上进行换行操作,然后添加新的内容)。
copy(String fileName1,String fileName2):需要两个文件的名字作为参数,文件名必须包含其详细路径,会将fileName1中的内容拷贝到fileName2中,fileName2不存在则创建新文件,fileName2存在则覆盖里面的内容。
2.Wheel来源。
这个是在看《Java编程思想》的时候,讲解I/O系统的时候书上给出的一个工具,然后得到的启发写的这个东西。
3.Wheel源码。
import java.io.*;
public class TextFile {
public String read(String fileName) {
StringBuilder stringBuilder = new StringBuilder();
try {
BufferedReader in = new BufferedReader(new FileReader(
new File(fileName).getAbsoluteFile()));
try {
String string;
while((string = in.readLine()) != null) {
stringBuilder.append(string);
stringBuilder.append("\n");
}
} finally {
in.close();
}
} catch (IOException e) {
throw new RuntimeException();
}
return stringBuilder.toString();
}
public void write(String fileName,String text) {
try {
PrintWriter out = new PrintWriter(
new File(fileName).getAbsoluteFile());
try {
out.print(text);
} finally {
out.close();
}
} catch (IOException e) {
throw new RuntimeException();
}
}
public void append(String fileName,String text) {
try {
PrintWriter out = new PrintWriter(
new FileWriter(fileName,true));
try {
out.println("\n" + text);
} finally {
out.close();
}
} catch (IOException e) {
throw new RuntimeException();
}
}
public void copy(String fileName1,String fileName2) {
String text = this.read(fileName1);
this.write(fileName2, text);
}
}
4.wheel演示。
使用的时候通过:import 这个类导入进去然后创建一个该类的对象即可。
测试代码:
import test.TextFile;
public class testTextFile {
public static void main(String[] args) {
//测试读取-----------------------------
TextFile textFile = new TextFile();
String fileName = "F:\\file\\测试文件.txt";
String string = textFile.read(fileName);
System.out.print(string);
//测试添加-------------------------
textFile.append(fileName, "添加的内容");
String string2 = textFile.read(fileName);
System.out.print(string2);
//测试复制---------------------------
textFile.copy(fileName, "F:\\file\\复制的文件.txt");
//测试写入---------------------------
textFile.write("F:\\file\\测试写入.txt", "新写入的内容(文件不存在)");//文件不存在
textFile.write(fileName, "新写入的内容(文件存在)");
}
}
文件名:测试文件.txt。 路径:F:\file\测试文件.txt 文件内容:测试TextFile。
运行代码之后,控制台输出内容:
这里是两次读取的内容。
然后在目录中,新出现了两个文件,此时三个文件的内容分别如下:
使用write时,创建的 测试写入.txt。
使用copy时,复制过来的 复制的文件.txt
使用write时,将原来内容覆盖掉后新的 测试文件.txt