package com.cqbank.archives.commons;java
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;數組
public class DeployFileList {
//需建立的文件夾名稱
public static final String FILENAME="FileList.ini"; //需建立的文件夾名稱
/**
* 本方法用於獲取指定文件夾的子文件夾中的圖片名稱,並寫入到FileList.ini文件中去(格式爲FileList 1=圖片.jpg 圖片.jpg)
*/
public void CreateFileListINI(String FLODERPATH){
Long l1 = System.currentTimeMillis();
File file = new File(FLODERPATH);
//判斷路徑是否存在
if(file.exists()){
//得到該文件夾下的 文件夾路徑數組
File[] files = file.listFiles();
//file.list()爲獲取文件夾名稱數組
//String[] files = file.list();
//用集合保存文件夾路徑
List<String> list = new ArrayList<String>();
//保存全部文件夾下的圖片名稱
List<List<String>> lists = new ArrayList<List<String>>();
for(File f : files){
//保存文件夾路徑,以便下面建立文件
list.add(f.getPath());
//取得圖片名,並添加到集合中去
List<String> imgList = new ArrayList<String>();
for(File childfile : f.listFiles()){
if(!"ini".equals(childfile.getName().substring(childfile.getName().lastIndexOf(".") + 1).trim())){
imgList.add(childfile.getName());
}
}
lists.add(imgList);
}
//開始建立指定文件FileList.ini
for(int i=0;i<list.size();i++){
try {
//建立目標文件實例
@SuppressWarnings("unused")
File purposeFile = new File(list.get(i),FILENAME);
//步驟:向目標文件中寫入內容
//取得目標文件的名稱
String purposeFilename = FILENAME.substring(0,FILENAME.lastIndexOf("."));
StringBuilder sb = new StringBuilder();
//寫入一個標記:[FileList]
sb.append("[").append(purposeFilename).append("]\r\n");
for(int j=0;j<lists.get(i).size();j++){
//內容
sb.append(j+1).append("=").append(lists.get(i).get(j)).append(" ").append(lists.get(i).get(j)).append("\r\n");
}
//建立FileWriter
FileWriter fw = null;
try {
//第一個參數爲路徑,第二個參數爲指示是否附加數據,默認寫false
fw = new FileWriter(list.get(i)+"/"+FILENAME,false);
//寫入內容
fw.write(sb.toString().toCharArray());
//刷新該流的緩衝,避免數據遺留在內存中
fw.flush();
} catch (Exception e) {
System.out.println("寫入文件出現異常:" + e.getMessage());
} finally {
try{
fw.close();
} catch (IOException e){
System.out.println("關閉FileWriter出現異常");
e.printStackTrace();
}
}
} catch (Exception e) {
System.out.println("建立目標文件失敗!" + e.getMessage());
}
}
Long l2 = System.currentTimeMillis();
System.out.println("完成時間:" + (l2-l1));
} else {
System.out.println(file.toString()+" 此路徑不存在");
}
}
public static void main(String[] args){
//存放圖片的文件夾路徑
String f="";
//String[] s = new String[]{"10年","30年","永久"};
DeployFileList d = new DeployFileList();
for(int i=1987;i<1997;i++){
//for(int j=0;j<3;j++){
//f="D:/disk/data/0/008/1/"+i+"/"+s[j];
f="D:/disk/data/0/008/3/"+i+"";
System.out.println(f);
//調用方法寫入信息
d.CreateFileListINI(f);
//}
}
}
}app