import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Arrays;
public class seprateFile {
public static void main(String[] args) {
int eachsize = 100 * 1024;
File f = new File("d:/jj/lol.doc");
splitfile(f, eachsize);
}
private static void splitfile(File f, int eachsize) {
if (f.length() == 0) {
System.out.println("文件大小不符合拆分条件");
}
Byte[] fileContent = new Byte[(int) f.length()];
FileInputStream fis;
try {
fis = new FileInputStream(f);
try {
fis.read();
fis.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
int number;
if (fileContent.length % eachsize == 0) {
number = fileContent.length / eachsize;
} else {
number = fileContent.length / eachsize + 1;
}
for (int i = 0; i < number; i++) {
String filename = f.getName() + i + "-" + ".doc";
File fi = new File(f.getParent(), filename);
Byte[] eachContent;
if (i != number - 1) {
eachContent = Arrays.copyOfRange(fileContent, eachsize * i, eachsize * (i + 1));
} else {
eachContent = Arrays.copyOfRange(fileContent, eachsize * i, fileContent.length);
}
try {
FileOutputStream fos = new FileOutputStream(fi);
try {
//fos.write(eachContent);//The method write(int) in the type FileOutputStream is not applicable for the arguments (Byte[])
fos.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.printf("输出子文件%s,其大小是,每个的大小是" + f.getAbsolutePath(), +fi.length(), +eachsize);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Arrays;
public class seprateFile {
public static void main(String[] args) {
int eachsize = 100 * 1024;
File f = new File("d:/jj/lol.doc");
splitfile(f, eachsize);
}
private static void splitfile(File f, int eachsize) {
if (f.length() == 0) {
System.out.println("文件大小不符合拆分条件");
}
Byte[] fileContent = new Byte[(int) f.length()];
FileInputStream fis;
try {
fis = new FileInputStream(f);
try {
fis.read();
fis.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
int number;
if (fileContent.length % eachsize == 0) {
number = fileContent.length / eachsize;
} else {
number = fileContent.length / eachsize + 1;
}
for (int i = 0; i < number; i++) {
String filename = f.getName() + i + "-" + ".doc";
File fi = new File(f.getParent(), filename);
Byte[] eachContent;
if (i != number - 1) {
eachContent = Arrays.copyOfRange(fileContent, eachsize * i, eachsize * (i + 1));
} else {
eachContent = Arrays.copyOfRange(fileContent, eachsize * i, fileContent.length);
}
try {
FileOutputStream fos = new FileOutputStream(fi);
try {
//fos.write(eachContent);//The method write(int) in the type FileOutputStream is not applicable for the arguments (Byte[])
fos.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.printf("输出子文件%s,其大小是,每个的大小是" + f.getAbsolutePath(), +fi.length(), +eachsize);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}