Java 实例

来源:互联网 发布:太空模拟软件 编辑:程序博客网 时间:2024/05/22 15:25

以下是两个函数,第一个函数是对文件进行切割,把文件分成相同大小的几份,第二个函数是获取文件的大小
/**
* 对文件按行进行分割,分成几份
* @param count 要分的文件个数
* @param path 源文件路径
* @param type 文件标签(Blog,Comment)
* @param outPath 分割后的文件路径
*/
public static void splitTxt(int count,String path,String type,String outPath) {
try {
FileReader read = new FileReader(path);
BufferedReader br = new BufferedReader(read);
String row;
List flist = new ArrayList();
for (int i = 0; i < count; i++) {
flist.add(new FileWriter(outPath + “data_”+type + i + “.json”));
}
int rownum = 1;// 计数器
while ((row = br.readLine()) != null) {
flist.get(rownum % count).append(row + “\r\n”);
rownum++;
}
for (int i = 0; i < flist.size(); i++) {
flist.get(i).close();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 获取文件的大小
* @param filename 文件的名字
* @return 文件大小 单位是字节(1KB=1024字节 )
*/
public static long getFileSize(String filename) {
File file = new File(filename);
if (!file.exists() || !file.isFile()) {
System.out.println(“文件不存在”);
return -1;
}
return file.length();
}