创建数据文件:
package com.test;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class CreateData {
private Log log = LogFactory.getLog(this.getClass().getName());
private String parrent = "test_%s01_%s.txt";
private int index = 0;
private String basePath = "C:/Linux Upload/data/";
private String path;
private String day;
private int pageData = 10;
private int pages = 3;
public CreateData(String path, String day, int pageData, int pages) {
this.path = basePath + day + "/";
this.day = day;
this.pageData = pageData;
this.pages = pages;
}
public CreateData(String day, int pageData, int pages) {
this.path = this.basePath + day + "/";
this.day = day;
this.pageData = pageData;
this.pages = pages;
}
public CreateData(String day) {
this.path = this.basePath + day + "/";
this.day = day;
}
public CreateData() {
}
public void createFiles(String day, String mobile8) {
this.day = day;
this.path = this.basePath + day + "/";
createFiles(mobile8);
}
public void createFiles(String mobile8) {
if (day != null && day.length() == 8) {
for (int i = 0; i < pages; i++) {
String fileName = String.format(parrent, day, getIndex());
createFile(fileName, mobile8, "" + i);
}
} else {
log.info("Export data:please input day.");
}
}
private String getIndex() {
String rs = "";
if (index < 10) {
rs = "00" + index;
} else if (index < 100) {
rs = "0" + index;
} else {
rs = "" + index;
}
index++;
if (index > 999) {
index = 0;
}
return rs;
}
private String getString3(int index) {
String rs = "";
if (index < 10) {
rs = "00" + index;
} else if (index < 100) {
rs = "0" + index;
} else {
rs = "" + index;
}
return rs;
}
private void createFile(String fileName, String mobile8, String index) {
try {
File file = new File(path + fileName);
if (!file.getParentFile().exists()) {
file.getParentFile().mkdirs();
}
FileOutputStream fos = new FileOutputStream(file);
OutputStreamWriter osw = new OutputStreamWriter(fos, "UTF-8");
BufferedWriter bw = new BufferedWriter(osw);
bw.write(fileName + "," + pageData + "\t\n");
log.info("Export data:create file " + fileName);
List<String[]> list = new ArrayList<String[]>();
for (int i = 0; i < pageData; i++) {
String[] r = new String[5];
r[0] = mobile8 + index + getString3(i + 1);
r[1] = "01";
r[2] = "443322" + day + index;
r[3] = "106" + day + index;
r[4] = "554433" + day + index;
list.add(r);
}
exportToFile(bw, list);
bw.close();
osw.close();
fos.close();
log.info("Export data:create file " + fileName + " finish.");
} catch (Exception e) {
e.printStackTrace();
}
}
private void exportToFile(BufferedWriter bw, List<String[]> list) {
String[] values = null;
String line = "";
for (int i = 0; i < list.size(); i++) {
values = list.get(i);
line = values[0].toString() + ",";
line += values[1].toString() + ",";
line += values[2].toString() + ",";
line += values[3].toString() + ",";
line += values[4].toString();
try {
bw.write(line + "\n\r");
} catch (IOException e) {
e.printStackTrace();
}
}
}
/**
* @param args
*/
public static void main(String[] args) {
CreateData cd = new CreateData();
int len = 4;
for (int i = 0; i < len; i++) {
cd.createFiles("2013091" + i, "13" + (5 + i) + "0001");
}
}
}