您的位置:首页 > 编程语言 > Java开发

Java:文件的简单操作。

2017-02-04 20:50 411 查看

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

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: