(1)遍历制定路径内的所有文件
public static List<File> GetAllFile(String filePath){
List<File> fileList = new ArrayList<File>();
File file = new File(filePath);
File[] files = file.listFiles();
if(files != null){
for(File f : files){
// 没有递归时 输出当前目录子文件; 递归时输出所有文件
if(f.isDirectory()){
GetAllFile(f.getPath());
}else{
System.out.println(f.getPath());
// 添加文件执行操作
fileList.add(f);
// Add code here
}
}
}
return fileList;
}
(2)读取 txt、csv、plt 格式数据
public static List<GPSData> ReadPltFile(String filePath){
// filePath = "E:\\*.txt";
List<GPSData> gpsDatas = new ArrayList<GPSData>();
try{
String encoding = "GBK";
File infile = new File(filePath);
if(infile.isFile() && infile.exists()){ // 判断文件是否存在
InputStreamReader read = new InputStreamReader(new FileInputStream(infile), encoding);
BufferedReader bufferedReader = new BufferedReader(read);
String lineTxt = null;
while((lineTxt = bufferedReader.readLine()) != null){
GPSData gps = new GPSData(lineTxt);
gpsDatas.add(gps);
}
read.close();
System.out.println("------>>>> " + filePath);
}else{
System.out.println("Not find file!");
}
}catch(Exception e){
e.printStackTrace();
}
return gpsDatas;
}
(3)写入 txt、csv、plt 格式数据
public static void writeIntoTxt(String filePath, List<String> lines){
try{
File outFile = new File(filePath);
if(!outFile.exists())
outFile.createNewFile();
BufferedWriter out = new BufferedWriter(new FileWriter(outFile, true)); // true表示追加内容
// 控制数据精度
NumberFormat nFormat = NumberFormat.getNumberInstance();
nFormat.setMaximumFractionDigits(7); //number of digits
for(String line : lines){
out.write( line + " \r\n");
}
out.close();
}catch(Exception e){
e.printStackTrace();
}
}