package com.tcl.file;
public abstract class FileIO {
abstract void checkFileExist();
abstract void writeToFile(String data,boolean mide);
abstract String readFromFile();
}
package com.tcl.file;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class FileIOTxtImpl extends FileIO {
public final String FILEPATH = "C:\\personAccount\\";
public final String FILENAME = "account.txt";
File file = new File (FILEPATH+FILENAME);//文件路径字符串
@Override
void checkFileExist() {
// TODO Auto-generated method stub
File fileDir = new File(FILEPATH);
if(!fileDir.exists()){//路径不存在则创建
fileDir.mkdir();
}
if(!file.exists()){//文件不存在则创建
try {
file.createNewFile();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
@Override
String readFromFile() {
// TODO Auto-generated method stub
String content = "";
try {
FileReader fr = new FileReader(file);
BufferedReader br = new BufferedReader(fr);//缓冲
String line;
while((line = br.readLine())!=null){
content += line;
}
fr.close();
br.close();
} catch (Exception e) {//直接捕获大方面异常
// TODO Auto-generated catch block
e.printStackTrace();
}
return content;
}
@Override
void writeToFile(String data, boolean mode) {
// TODO Auto-generated method stub
try {
FileWriter fw = new FileWriter(file,mode);
fw.write(data);
fw.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
package com.tcl.file;
public class Test {
public static void main(String[] args) {
FileIOTxtImpl ft = new FileIOTxtImpl();
ft.checkFileExist();
ft.writeToFile("文件写入和读取成功!", true);
System.out.println(ft.readFromFile());
}
}
运行结果: