Java分割txt文件,現在網絡小說比較長,好多朋友想用手機或者mp3之類的工具閱讀,但是文件太大不方便,於是乎,我就寫了一個分割文件的小程序,時間倉促,從有想法到寫出初稿大概用來半個小時。先貼上來,以後再修改完善。
簡要說明一下注釋一下,直接在代碼添註釋看着不好看,sourceFile是要分割的文件的路徑,targetDirectory是分割後的文件的保存位置,prefix是分割後文件的前綴,size是分隔後單一文件的大小,單位是2K,size是5的話,分割後單一文件就是10K。
package file;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
public class FileCutter {
public static void cutToMoreFile(String sourceFile, String targetDirectory, String prefix, int size)
{
File source = new File(sourceFile);
InputStream in = null;
OutputStream out = null;
int len = 0;
int fileIndex = 1;
byte[] buffer = new byte[2048];
try
{
in = new FileInputStream(source);
while(true)
{
out = new FileOutputStream(targetDirectory + File.separator + prefix + fileIndex++ + ".txt");
for(int i = 0; i < size; i++)
{
if((len = in.read(buffer)) != -1)
{
out.write(buffer, 0, len);
}else
{
return;
}
}
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally
{
try {
in.close();
out.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}