精华内容
下载资源
问答
  • 多个word合并成一个word java实现(合并后格式完美匹配)
    千次阅读
    2020-09-27 18:07:30
    
    import org.apache.poi.openxml4j.opc.OPCPackage;
    import org.apache.poi.xwpf.usermodel.Document;
    import org.apache.poi.xwpf.usermodel.XWPFDocument;
    import org.apache.poi.xwpf.usermodel.XWPFPictureData;
    import org.apache.xmlbeans.XmlOptions;
    import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTBody;
    
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.OutputStream;
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
     public  class FileCopyUtil{
    
    	public static void FileCopy(String[] inPath,String outPath) {
    		File newFile = new File( outPath);
    		List<File> srcfile = new ArrayList<>();
    		for (String s : inPath) {
    			File file = new File(s);
    			srcfile.add( file );
    		}
    		try {
    			OutputStream dest = new FileOutputStream( newFile );
    			ArrayList<XWPFDocument> documentList = new ArrayList<>();
    			XWPFDocument doc = null;
                FileInputStream in=null;
    			for( int i = 0; i < srcfile.size(); i++ ) {
                    in = new FileInputStream( srcfile.get( i ).getPath() );
    				OPCPackage open = OPCPackage.open( in );
    				XWPFDocument document = new XWPFDocument( open );
    				documentList.add( document );
    			}
                in.close();
    			for( int i = 0; i < documentList.size(); i++ ) {
    				doc = documentList.get( 0 );
    				if( i != 0 ) {
    					// 分页
    					documentList.get( i ).createParagraph().setPageBreak( true );
    					appendBody( doc, documentList.get( i ) );
    				}
    			}
    			// 分页
    			doc.createParagraph().setPageBreak( true );
    			doc.write( dest );
    
    		} catch( Exception e ) {
    			e.printStackTrace();
    		}
    	}
    
    	/*public static void main(String[] args) {
    		File newFile = new File( "F:\\outs.docx");
    		List<File> srcfile = new ArrayList<>();
    		File file1 = new File( "F:\\out.docx");
    		File file2 = new File( "F:\\outt.docx");
    		srcfile.add( file1 );
    		srcfile.add( file2 );
    		try {
    			OutputStream dest = new FileOutputStream( newFile );
    			ArrayList<XWPFDocument> documentList = new ArrayList<>();
    			XWPFDocument doc = null;
    			for( int i = 0; i < srcfile.size(); i++ ) {
    				FileInputStream in = new FileInputStream( srcfile.get( i ).getPath() );
    				OPCPackage open = OPCPackage.open( in );
    				XWPFDocument document = new XWPFDocument( open );
    				documentList.add( document );
    			}
    			for( int i = 0; i < documentList.size(); i++ ) {
    				doc = documentList.get( 0 );
    				if( i != 0 ) {
    					// 分页
    					documentList.get( i ).createParagraph().setPageBreak( true );
    					appendBody( doc, documentList.get( i ) );
    				}
    			}
    			// 分页
    			doc.createParagraph().setPageBreak( true );
    			doc.write( dest );
    		} catch( Exception e ) {
    			e.printStackTrace();
    		}
    	}*/
    
    	public static void appendBody( XWPFDocument src, XWPFDocument append ) throws Exception {
    		CTBody src1Body = src.getDocument().getBody();
    		CTBody src2Body = append.getDocument().getBody();
    		List<XWPFPictureData> allPictures = append.getAllPictures();
    		// 记录图片合并前及合并后的ID
    		Map<String, String> map = new HashMap<>();
    		for( XWPFPictureData picture : allPictures ) {
    			String before = append.getRelationId( picture );
    			// 将原文档中的图片加入到目标文档中
    			String after = src.addPictureData( picture.getData(), Document.PICTURE_TYPE_PNG );
    			map.put( before, after );
    		}
    		appendBody( src1Body, src2Body, map );
    	}
    
    	private static  void appendBody( CTBody src, CTBody append, Map<String, String> map ) throws Exception {
    		XmlOptions optionsOuter = new XmlOptions();
    		optionsOuter.setSaveOuter();
    		String appendString = append.xmlText( optionsOuter );
    		String rgex = "<[\\s]*?w:sectPr[^>]*?>[\\s\\S]*?<[\\s]*?\\/[\\s]*?w:sectPr[\\s]*?>";
    		appendString = appendString.replaceAll( rgex, "" );
    		// 去除分页符
    		String srcString = src.xmlText().replaceAll( "<w:p><w:r><w:br w:type=\"page\"/></w:r></w:p>", "" ).replaceAll( "<w:r><w:br w:type=\"page\"/></w:r>", "" );
    		String prefix = srcString.substring( 0, srcString.indexOf( ">" ) + 1 );
    		String mainPart = srcString.substring( srcString.indexOf( ">" ) + 1, srcString.lastIndexOf( "<" ) );
    		String sufix = srcString.substring( srcString.lastIndexOf( "<" ) );
    		String addPart = appendString.substring( appendString.indexOf( ">" ) + 1, appendString.lastIndexOf( "<" ) );
    		if( map != null && !map.isEmpty() ) {
    			// 对xml字符串中图片ID进行替换
    			for( Map.Entry<String, String> set : map.entrySet() ) {
    				addPart = addPart.replace( set.getKey(), set.getValue() );
    			}
    		}
    		// 将两个文档的xml内容进行拼接
    		CTBody makeBody = CTBody.Factory.parse( prefix + mainPart + addPart + sufix );
    		src.set( makeBody );
    	}
    
    }
    
    更多相关内容
  • 多个word路径下的word合并成一个word 第一个路径合并后在第一个位置,最后一个路径合并后在最后
  • java运用poi操作word,替换word中的占位符填充数据,并将多个word合并成一个word,附件是java代码和相关jar包,以及测试模板,需要注意是,只适用2007以上的word
  • 使用poi将多个word合并

    2019-03-25 11:10:44
    使用poi将多个word合并,本方法经过测试,目前只支持多个doc格式合并成一个doc,如果是docx格式生成后打不开
  • 实现将多个word文件合并成一个word文档,整理两种方法,所需资料比较齐全,已经过测试,可直接下载使用。
  • 多个后缀为.docx文档合并成一个文档,并实现分页,避免因文档过多,打开过于麻烦
  • 概要:我们经常要处理很多 Word 文档,有时候我们希望将多个 Word 文件都批量的合并成一Word 文件,这个时候该怎么办呢?现在有一种简单的方法,能够批量的将多个 Word 文档合并成单个 Word 文件,这样对于我们来...

    概要:我们经常要处理很多 Word 文档,有时候我们希望将多个 Word 文件都批量的合并成一个 Word 文件,这个时候该怎么办呢?现在有一种简单的方法,能够批量的将多个 Word 文档合并成单个 Word 文件,这样对于我们来说阅读是非常的方便。

    对于深度办公用户来说,经常要处理很多 Word 文件,有时候我们希望将多个 Word 文件合并成一个大的 Word 文件,这样方便我们打印,也方便我们整理文件里面的内容,同时也方便我们阅读,我们不需要在多个 Word 文档之间进行切换。

    如果我们手工的将很多个 Word 文档进行复制粘贴合并的话,这样的效率非常的低,估计老板也不会同意,那么我们有没有一种方法能够批量的将多个 Word 文件合并成一个 Word 文件呢?答案肯定是有的,这里给大家讲解一个非常简单的方法,能够批量的将多个 Word 文件合并成一个 Word 文件,有了这个批量将多个 Word 文件合并成单个 Word 文件的方法之后,我们以后再有类似的需求的时候,就非常方便快速的合并完成了。

    打开「我的ABC软件工具箱」,然后进入到 Word 合并成单个文件的功能中。这个合并的意思就是说将一个文件夹中的所有 Word 文件批量的合并成单个的 Word 文件。

    进入到批量合并 Word 文件的功能中之后,我们需要单击右上角的添加文件夹来合并我们的 Word 文档:

    当我们选择完需要批量进行合并的 Word 文件所在的文件夹之后,我们直接单击下一步,然后软件在这里会提示我们合并的顺序,我们这里可以批量的按照 Word 文件的文件名的升序或者降序来对这些 Word 文件进行一次性合并。

    我们设置好合并的顺序之后直接单击下一步,然后软件就很快速的批量的将我们所有的 Word 文件都合并成单个的 Word 文件了,这样我们以后在阅读 Word 文档的时候,采用这个批量合并文档的方法,就可以很好的进行阅读或者整理了。   

    展开全文
  • 利用VBA语言将同一文件夹中的多个Word文档合并到一个新的Word中,使用简单快捷。
  • 我们可以根据需要将文件夹中的多个 Word 文档按照一定的顺序进行合并,这样可以把多个 Word 文档整合形成一个完整的文档。非常的方便与实用。 在前面的系列中,我们给大家介绍了怎么去将一个完整的 Word 文档按照...

    概要:「我的ABC软件工具箱」提供了文档合并的功能,其中就包括了 Word 拆分成单个文件。我们可以根据需要将文件夹中的多个 Word 文档按照一定的顺序进行合并,这样可以把多个 Word 文档整合形成一个完整的文档。非常的方便与实用。

    在前面的系列中,我们给大家介绍了怎么去将一个完整的 Word 文档按照页数拆分成多个独立的 Word 文档。有拆分的需求就有合并的需求,所以今天就给大家介绍一下 Word 合并成单个文件的小妙招。今天要给大家介绍的是一款办公软件「我的ABC软件工具箱」,它可以指定文件夹,将文件夹内的多个 Word 文档按照一定的顺序进行合并,从而形成一个完整的 Word 文档。我们一起来看看这个小妙招吧!

    打开「我的ABC软件工具箱」,左侧面板选择【合并拆分】,然后右侧就能看到【Word 合并成单个文件】的功能啦!

    点击菜单按钮,会进入到选择文件夹的页面。

    在当前页面就可以点击右上角的“添加文件夹”按钮来添加要合并的文件夹了,还可以直接将文件夹拖拽进来!

    添加好后,界面就能显示我们已经添加的待合并的文件夹了。列表中的每一条记录是一个文件夹,此操作会将该文件夹中的 Word 文件合并成一个文件!当添加完文件夹后,就可以点击“下一步”按钮了,进入到设置参数信息的页面。

    因为文件夹中往往会包含多个 Word 文档,所以我们需要指定文档是按照降序还是升序的方式进行合并。设置好并确认无误后点击下一步进入到设置输出目录的页面。

    在这个页面,我们可以设置文件存储的位置。设置好并确认无误后,继续点击下一步,「我的ABC软件工具箱」就进行 Word 合并成单个文件的操作了。

    一会儿,Word 合并的操作就处理完成了。这个界面上能看到处理文件的列表,还能看到合并了多少个文档!

    到这里,Word 合并成单个文件的小妙招就介绍完了,是不是很简单很实用呢?

    展开全文
  • 主要介绍了C#实现合并多个word文档的方法,是C#针对Word文档操作的一个非常重要的技巧,需要的朋友可以参考下
  • 多个word文件合并为一个的方法

    千次阅读 2021-04-02 12:57:31
    1.将要合并word文件放入一文件夹(方便后期一下子选中); 2.如果对合并后的文件有顺序要求的话,可以在名称开头编好序号123456,然后按名称排序; 3.新建空白word用于汇总,点击插入-对象-对象中的文字; 4....

    1.将要合并的word文件放入一个文件夹(方便后期一下子选中);

    2.如果对合并后的文件有顺序要求的话,可以在名称开头编好序号123456,然后按名称排序;

    3.新建空白word用于汇总,点击插入-对象-对象中的文字;

    在这里插入图片描述

    4.然后在弹框选中需要的所有文件就可以啦

    展开全文
  • 多个Word合并成一

    2020-04-30 10:40:23
    如何快速把多个Word文档合并成一个Word https://zhidao.baidu.com/question/1990921257863753787.html 插入--对象--文件中的文字
  • 多个word文档合并为一个文档 Java实现 不用额外新建一个空文档,适合需要不断往一个文档中添加其他文档的情况。适合每页格式固定,添加文件新起一页的情况。可进行测试。 package could.com.hanwen.govapi.Test; ...
  • javascript前端生成Word

    2020-02-21 08:00:06
    最近做项目遇到要在Web上生成Word文件的需求。这里就用前端生成的办法作为临时解决方案。提供文字排版和表格设计,满足基本功能。如果需要其他功能,需要在Word上录制宏,再把代码转换成JS。 环境:只能是IE浏览器...
  • 导入maven <!--word导出--> <dependency> <groupId>com.deepoove</groupId> <artifactId>poi-tl</artifactId> <version>1.10.0<...--word合并--&
  • 互盾PDF分割合并工具将多个PDF文件合并成一个PDF文档互盾PDF分割合并工具将多个PDF文件合并成一个PDF文档 互盾PDF分割合并工具将多个PDF文件合并成一个PDF文档 一.下载并安装软件,双击打开软件如图. 二.点击软件最...
  • 展开全部国内有免费32313133353236313431303231363533e78988e69d8331333431356133的jar(Free Spire.Doc for Java),可用来合并Word文档,分两种合并方法:1.合并的内容新起一页;2.合并的内容承接上文段落。1.新起...
  • 1,打开"合并文档" ,点选"插入"-"文件"选项。 2,选择需要插入的"全部文档" ,点击"插入"按钮。 3,所有的文档内容全部插入到一个Word文档中。 进入渠道:打开word-插入-文本-对象-文件中的文字
  • 使用Java合并多个word文档

    万次阅读 2018-08-24 15:11:12
    /** * 合并多个word文档内容 * @author Administrator * */ public class HbWordData { /** * @param fileList 合并多个word文档内容 * @param savepaths 合并保存新文档 */ public static void ...
  • 电脑怎么将多个PPT文件合并成一

    千次阅读 2021-08-02 00:23:00
    那么今天小编跟大家分享的是电脑怎么将多个PPT文件合并成一个。具体如下:1. 首先我们需要在电脑中打开一份PPT文档。2. 进入主界面之后我们点击上方功能栏中的“审阅”选项。3. 然后我们点击下一行中的“比较”选项...
  • 1.把多个word文档分别插入到模板中指定数据区域生成一个Word文档。首先介绍一下DataRegion的Value属性,如果给Value赋值一个字符串常量或变量,那么数据区域的内容就是这段文本;如果给Value赋值一个”[Word]”开头...
  • 我们经常会接触很多电子文档,目前大部分都是PDF格式的,有时很多资料我们都只需要其中的第一页,那么如何把很多个PDF的首页单独弄出来再合并成一个新的PDF文件呢?这里我们需要进行两步操作,第一步提取,第二步...
  • Java 合并Word文档

    2021-02-12 19:11:45
    通常合并文档有两种方式,一种是直接将被合并文档的正文承接在上一文档的最后一段落末尾;另一种则是被合并文档的内容从新的一页开始显示。此次代码演示所需工具是Free Spire.Doc for Java。请从官网上下载获取...
  • vbs合并word文档

    2012-01-26 12:29:23
    vbs合并word文档代码。把这个vbs合并word文档.txt改为vbs合并word文档.vbs,然后和两个word文档(分别为a.doc和b.doc)放在一个文件夹中,双击后即可合并
  • 相同格式的excel进行合并,或者对多个word文档进行合并,word文档包含图片。
  • 前段时间项目上遇到这么一个需求,需要将多个OCR识别的word文档合并成一个,于是就在网上找了找,自己修改了一下。在这里跟大家分享一下,希望有用的到的。  要做多word文档合并,首先要导入Microsoft.Office....
  • java实现将多个word文档合并

    千次阅读 2019-10-12 14:41:35
    1、使用OPCPackage将每一文档打开并且存储起来 2、将其转成字符串合并 3、再将字符串转换成对应得XWPFDocument 对象写出即可 代码如下: /** * 合并docx文件 * * @param srcDocxs 需要合并的目标docx文件 * @param...
  • 怎么将多个jpg合并成一个pdf

    千次阅读 2021-03-13 03:49:34
    先使用虚拟打印机等把Word做成PDF文件:方法一:使用虚拟打印机pdf factory即可,而且其他格式文件只要是能够打印,选择这虚拟打印机,都可以做成PDF文件,很简单实用;方法二:使用专门的转换软件,把文件转成PDF...
  • 插入——对象——文件中的文字——选择要插入的文件,即可!

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 11,842
精华内容 4,736
关键字:

多个word合并成一个word