`

JAVA 文件的拆分与合并处理

    博客分类:
  • java
 
阅读更多

 

描述: 将一个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文件的拆分与合并 一、Java文件的拆分 Java文件的拆分是指将一个大的Java文件分割成多个小的...Java文件的拆分与合并技术有广泛的应用前景,可以解决大文件处理的问题,提高文件的传输、存储和处理效率。

    Java实现文件拆分与合并

    ### Java实现文件拆分与合并 #### 一、文件拆分 在《Java实现文件拆分与合并》这篇文档中,作者提供了一种基于Java语言的文件拆分方法,主要思路是按照文件的行数来将一个大文件分割成多个小文件。这种技术在处理...

    java拆分与合并02

    总结,Java提供的I/O流类库为我们提供了处理文件拆分与合并的强大工具。通过熟练掌握这些基本概念和方法,开发者可以应对各种复杂的文件操作需求。在实际项目中,可能还需要考虑线程安全、错误处理以及性能优化等...

    java_文件拆分合并

    在Java编程语言中,文件拆分与合并是常见的文件...在给定的压缩包文件"day1604_文件拆分合并"中,可能包含了实现这些功能的示例代码或练习。通过解压并研究这些文件,你可以更深入地理解Java中的文件拆分和合并操作。

    Java实现文件拆分合并

    ### Java实现文件拆分合并 #### 一、背景与需求分析 在大数据处理场景中,经常需要对大型文件进行拆分或合并操作。例如,在分布式处理系统中,为了提高并行处理效率,需要将单个大文件拆分成多个较小的文件,以...

    文件拆分与合并工具

    用于大文件的拆分和拆分传输后对端文件的恢复 ...文件拆分 java FileSpliter 文件名 拆分文件存储文件夹名 每片包含字节数 文件合并 java FileCombine 拆分文件存储文件夹名 执行成功后在文件夹中合并出原有文件

    Java文件的拆分与合并[收集].pdf

    《Java文件的拆分与合并》 在Java编程中,有时我们需要处理大文件,而一次性加载整个文件到内存可能会导致性能问题或者超出内存限制。因此,文件的拆分与合并成为了一个重要的操作。本文将详细介绍如何使用Java实现...

    android文件的合并与拆分

    在Android开发中,文件的合并与拆分是常见的操作,特别是在处理资源文件或者进行个性化定制时,例如换肤功能的实现。本文将深入探讨如何在Android环境中有效地进行文件的合并与拆分,以及它们在实际应用中的作用。 ...

    TIF文件合并与拆分完美下载

    本类将让你轻松实现TIF图片文件的合并与拆分,方法操作简单,轻轻松松就学会

    文件的拆分和合并

    以下将详细介绍文件拆分和合并的基本概念、应用场景以及如何使用Java进行操作。 **一、文件拆分** 1. **基本概念**:文件拆分是指将一个大文件切割成若干个较小的部分,每个部分都是原始文件的一个连续片段。这...

    文件分割与合并的java小工具

    使用java开发的一个大文件切割成多个小文件的工具,只要安装了java环境,之间点击运行就行了。

    将大文件分割及合并java源码

    总的来说,这个`SplitImageUtil.java`源码提供了大文件分割和合并的功能,对于开发者来说,它是一个学习和参考的实例,帮助理解如何在Java中高效地处理大文件。通过深入分析和理解这段代码,开发者可以将其应用于...

    超大文件拆分合并工具.zip

    超大文件拆分合并工具是针对那些体积庞大的文件而设计的一种实用软件,它采用Java编程语言进行开发,具有跨平台的特性。在当前数字化时代,处理大容量文件的需求日益增加,尤其是在网络传输、存储和备份过程中,超大...

    文件的上传拆分合并

    这两个Java文件,UploadJPG.java和SplitFile.java,可能分别涉及到了文件上传和文件拆分的功能。现在我们来详细探讨一下这些知识点。 **1. 文件上传** 文件上传通常是指将本地计算机的文件通过网络发送到远程服务器...

    java简单文件剪切与合并

    java实现文件的拆分,合并 可以直接编译运行,很简单的代码,有注释

    Word文档的拆分合并

    ### Word文档的拆分与合并技术详解 #### 一、Word文档合并...总之,Word提供的文档拆分与合并功能非常实用,能够大大提高工作效率,尤其是在处理大型项目时更为明显。通过上述步骤,您可以轻松实现文档的高效管理。

    java实现文件合并与分割

    在Java编程语言中,文件合并与分割是常见的文件操作任务,尤其在大数据处理、日志分析和文件管理等场景中尤为关键。本程序提供了一个基础的实现,旨在帮助初学者理解这一过程,并通过MD5校验确保文件的完整性和未被...

    NDK开发之文件拆分合并

    在"NDK开发之文件拆分合并"的主题中,我们将深入探讨如何在Android环境下利用NDK进行文件的拆分与合并操作。 首先,我们要理解NDK的基本概念。NDK提供了一系列的工具,包括编译器、链接器和调试工具,用于创建原生...

    Java文件拆分器[整理].pdf

    上述代码提供了一个简单的Java文件拆分工具类——`FileSplitUtilClass`,它包含了两个主要方法:`split()`用于拆分文件,`fixFile()`用于合并拆分后的文件。下面我们将详细讲解这两个方法以及相关的Java I/O知识。 ...

Global site tag (gtag.js) - Google Analytics