📄 findfile.java
字号:
package model;
/**
* 查找文件类(FindFile)
* 作者:DrMeng 日期:08/07/26
*/
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
public class FindFile {
private String idFileName = "src//config//id.dat";
private String accountFileName = "src//config//account.dat";
private String configFileName = "src//config//config.txt";
private String idFilePath = null;// 返回id.dat的绝对位置路径
private String accountFilePath = null;// 返回account.dat的绝对位置路径
private File file1 = null;
private File file2 = null;
private long id = 100001;
public FindFile() {
file1 = new File(idFileName);
file2 = new File(accountFileName);
idFilePath = file1.getAbsolutePath();
accountFilePath = file2.getAbsolutePath();
beFindFile();// 判断文件是否存在
}
public String getAccountFileName() {// 得到账户信息文件的绝对路径
String daoName = null;
String fileName = null;
try {
FileReader fr = new FileReader((new File(configFileName))
.getAbsolutePath());
BufferedReader in = new BufferedReader(fr);
daoName = in.readLine();
fileName = in.readLine();
in.close();
// System.out.println("Key="+daoName);
// System.out.println("Value="+fileName);
fileName = (String) ((new File(fileName)).getAbsolutePath());
} catch (IOException e) {
e.printStackTrace();
}
return fileName;
}
public void writeIdToFile() {// 将初始ID写到文件
DataOutputStream out = null;
try {
FileOutputStream fo = new FileOutputStream(idFilePath);
out = new DataOutputStream(fo);
out.writeLong(id);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (out != null)
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
public String getIdFilePath() {
return idFilePath;
}
public String getAccountFilePath() {
return accountFilePath;
}
// 如果有一个文件不存在,就全部删掉重新创建
public synchronized void beFindFile() {
if (!(file1.exists() && file2.exists())) {// 两个文件有一个不存在
if (file1.exists()) { //
file1.delete();
} else if (file2.exists()) {
file2.delete();
}
}
if (!(file1.exists() && file2.exists())) {
try {
file1.createNewFile();
file2.createNewFile();
writeIdToFile();// 写个初始id=100001到文件
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
// System.out.println("文件关闭成功!");
}
}
}
public static void main(String[] args) {
FindFile find = new FindFile();
System.out.println(find.getIdFilePath());
System.out.println(find.getAccountFilePath());
System.out.println(find.getAccountFileName());
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -