java文件分割及合并
2024-10-08 08:05:57
分割设置好分割数量,根据源文件大小来把数据散到子文件中代码如下;
package word; import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintStream; public class Bb { public static void main(String[] args) throws FileNotFoundException {
// TODO 自动生成的方法存根 String path1="C:";
String name="\\JAVA";
String end=".txt";
String path2; long l;
long n=2;//设置分割数目
File file = new File(path1+name+end);
File file2;
l=file.length();
InputStream in = null;
PrintStream out = null;
try { in = new FileInputStream(file);
int tempbyte;
int i=0;
for(i=1;i<=n;i++) {
path2=path1+name+i+end;
file2=new File(path2);
if(file2.exists()) {}
else {
file2.createNewFile();
}
out=new PrintStream(file2);
while ((tempbyte = in.read()) != -1) { out.print((char)tempbyte);
System.out.write(tempbyte);
if(file2.length()>l/n)break;//子文件到达指定大小就创建下一个文件;
} }
out.close();
in.close();
} catch (IOException e) {
e.printStackTrace();
return; }
}}
合并就是上面的反过程,即把各个小文件输入到大文件中:
package word; import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintStream; public class Bb { public static void main(String[] args) throws FileNotFoundException {
// TODO 自动生成的方法存根 String path1="C:";
String name="\\JAVA";
String end=".txt";
String path2; long n=2;
File file = new File(path1+name+end);
File file2;
l=file.length();
InputStream in = null;
PrintStream out = null;
if(file.exists()) {}
else {
file.createNewFile();
}
out=new PrintStream(file);
try { int tempbyte;
int i=0;
for(i=1;i<=n;i++) {
path2=path1+name+i+end;
file2=new File(path2);
in = new FileInputStream(file2); while ((tempbyte = in.read()) != -1) { out.print((char)tempbyte); } }
out.close();
in.close();
} catch (IOException e) {
e.printStackTrace();
return; }
}}
最新文章
- 转:电子取证中AVI文件的文件雕复
- LCM兼容
- PL/SQL在win7X 64下安装
- jQuery 的 json 格式的处理问题
- WAJUEJI which home strong!
- phpstorm + xdebug 配置
- [Mugeda HTML5技术教程之10]发布内容
- Sys.WebForms.PageRequestManagerParserErrorException:无法分析从服务器收到的消息
- Struts2 学习笔记 10 Result部分 part1
- 在什么情况下使用exist和in
- JS解决通过按钮切换图片的问题
- Spring之旅第四篇-注解配置详解
- 关于macOS 管理员(Admin)权限问题。
- 花了几天学习了vue跟做的仿制app
- HTTP Status 500 - Error instantiating servlet class cn.it.bd.S011
- P1100 高低位交换
- zabbix-proxy使用配置
- IT这条路,适合什么人走。
- ubuntu1604使用之旅——软件源更新(vim安装)
- springBoot 学习(总)