描述: 将一个pdf拆分为两个文件保存,然后在将文件合并成一个文件。
package IO.ReaderAndWriter; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.FileReader; import java.io.IOException; import java.io.UnsupportedEncodingException; /** * @Title:Test1 * @Author Tony * @Date: 2014年6月25日 上午11:33:04 * @Description: 在读取数据的时候,能用块读取数据尽量一次读取一块,速度相差好多 */ public class Test1 { public static void main(String[] args) throws UnsupportedEncodingException, IOException { wirteFileSplit(); combinFile(); } /** * @throws IOException * @Title: wirteFileSplit * @Description: 写文件 split ,将一个文件分为两个文件保存 * @return void 返回类型 * @throws */ public static void wirteFileSplit() throws IOException{ // File f =new File("F:\\sysmodel.xml"); // System.out.println( f.getPath() ); File f =new File("F:\\spring-framework-reference.pdf"); FileOutputStream out1 = new FileOutputStream(new File("F:\\a.tmp"));//保存的第一个文件 FileOutputStream out2 = new FileOutputStream(new File("F:\\b.tmp"));//保存的第二个文件 Long fileSize = f.length(); FileInputStream in = new FileInputStream(f); byte[] buf = new byte[1024]; int len ; int totle =0 ; while( (len= in.read(buf, 0, buf.length ))!=-1 ){ totle += len; if(totle<fileSize/2){ out1.write(buf, 0, len); }else{ out2.write(buf, 0, len); } } out1.flush(); out2.flush(); out1.close(); out2.close(); // out1.getFD().sync(); // out2.getFD().sync(); System.out.println("完成"); // try { // FileReader fr = new FileReader("F:\\sysmodel.xml"); // BufferedReader br = new BufferedReader(fr); // char[] cs = new char[1024]; // int len=0 ; // int cha ; // String strLine ; // long start = System.currentTimeMillis(); // //一次读取一个字符列表 ,读取数据尽量选用这个 // while( (len = fr.read(cs, 0, 1024))!=-1 ){ // System.out.println(new String( cs,0,len) ); // } // //一次只读取一个字符 // while((cha = fr.read())!=-1 ){ // System.out.println( (char)cha); // } // // while((strLine = br.readLine())!=null ){ // System.out.println( strLine ); // } // // long end = System.currentTimeMillis(); // System.out.println( start - end ); // fr.close(); // // } catch (FileNotFoundException e) { // e.printStackTrace(); // } catch (IOException e) { // e.printStackTrace(); // } } /** * @throws IOException * @Title: combinFile * @Description: 将拆分的两个文件,合并为一个文件 * @return void 返回类型 * @throws */ public static void combinFile() throws IOException{ FileInputStream in1 = new FileInputStream("F:\\a.tmp"); FileInputStream in2 = new FileInputStream("F:\\b.tmp"); FileOutputStream out1 = new FileOutputStream(new File("F:\\test.pdf"));//拆分的两个文件合成一个文件 byte[] buf = new byte[1024]; int len ; while( (len= in1.read(buf, 0, buf.length ))!=-1 ){ out1.write(buf, 0, len); } while( (len= in2.read(buf, 0, buf.length ))!=-1 ){ out1.write(buf, 0, len); } in1.close(); in2.close(); out1.flush(); out1.close(); System.out.println( "完成 "); // out1.getFD().sync(); } }
相关推荐
Java文件的拆分与合并.pdf
Java代码,实现文件拆分与合并,android开发可以借鉴学习
java_文件拆分合并
用于大文件的拆分和拆分传输后对端文件的恢复 ...文件拆分 java FileSpliter 文件名 拆分文件存储文件夹名 每片包含字节数 文件合并 java FileCombine 拆分文件存储文件夹名 执行成功后在文件夹中合并出原有文件
Java文件的拆分与合并[收集].pdf
本类将让你轻松实现TIF图片文件的合并与拆分,方法操作简单,轻轻松松就学会
使用java开发的一个大文件切割成多个小文件的工具,只要安装了java环境,之间点击运行就行了。
给定带拆分数量,计算出每个文件的平均字节数,然后循环文件数进行每个文件的拆分。拆分第一个文件时,根据平均字节数往后取给定的大约行字节数的字节,然后循环字节判断是否为\r或者\n,如果字节为\r或者\n则代表...
java实现文件的拆分,合并 可以直接编译运行,很简单的代码,有注释
将大文件分割及合并java源码.zip将大文件分割及合并java源码.zip将大文件分割及合并java源码.zip
NULL 博文链接:https://wentise.iteye.com/blog/1472493
二进制文件合并拆分,java封装dll实现。
pdf合并、pdf拆分、免安装版本的pdf拆分合并工具
可以把两个文件和并到一个文件中,这样我们不需要手工合并,可以达到自动化的过程。vc实现代码,可以作为学习使用。
java实现大文件分割与合并的实例代码,需要的朋友可以参考一下
该工具使用java开发。可以对超大文件进行拆分,可解决超大文件不能一次传输的问题。操作步骤:打开压缩文件,执行里面的dm.exe可以选择拆分文件,拆分完后,可以选择生成的json文件进行合并。
java 自动拆分合并的单元格并补充拆分后的值
可以对大文件进行拆分以及合并。
是一款将TIFF合并与拆分的软件,非常好用