文件的读写添加删除操作
import java.io.*;
public abstract class DoFile {
/**
* @param args
*/
public static void writeFile(String fileName,String text){
String mfileName="D:\\"+fileName+".txt"; //可自定义进行修改
File file=new File(mfileName);
try {
if (!file.exists()) file.createNewFile();
FileWriter fw=new FileWriter(file,true);
BufferedWriter output = new BufferedWriter(fw);
output.write(text);
output.write("\r\n");
output.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//删除文件
public static void delFile(String fileName){
String mfileName="D:\\"+fileName+".txt";
File file=new File(mfileName);
try {
if (!file.exists()) file.createNewFile();
FileWriter fw=new FileWriter(file);
BufferedWriter output = new BufferedWriter(fw);
output.write("");
output.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//删除指定内容数据
public static void delStringFromFile(String fileName,String delStr){
String mfileName="D:\\"+fileName+".txt";
String []s=DoFile.readFile(fileName);
int i=0;
while(s[i]!=null){
if (s[i].equals(delStr)) {
s[i]=null;
break;
}
i++;
}
DoFile.delFile(fileName);
for(int j=0;j<1000;j++){
if (s[j]!=null) DoFile.writeFile(fileName, s[j]);
}
}
//读取文件,每行存在一个数组变量
public static String[] readFile(String fileName){
String mfileName="D:\\"+fileName+".txt";
String []str=new String[1000];
String s="";
int i=0;
try {
BufferedReader input = new BufferedReader(new FileReader(mfileName));
try {
while(( s = input.readLine())!=null){ //判断是否读到了最后一行
str[i]=s;
i++;
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return str;
}
//测试doFile类
public static void main(String[] args) {
// TODO Auto-generated method stub
DoFile.delFile("1111");
DoFile.writeFile("1111","1");
DoFile.writeFile("1111","2");
DoFile.writeFile("1111","3");
DoFile.writeFile("1111","1");
String []s=DoFile.readFile("1111");
int i=0;
while(s[i]!=null){
System.out.print(s[i]);
i++;
}
System.out.println("删除文件中第一个数字1");
DoFile.delStringFromFile("1111", "1"); //去掉break则去掉所有数字1
String []t=DoFile.readFile("1111");
int j=0;
while(t[j]!=null){
System.out.print(t[j]);
j++;
}
}
}