0 0

POI复制图片0

下面是我复制多行的代码,但是图片没有复制过去:
private void copyRows(HSSFWorkbook wb, HSSFSheet sourceSheetEntity,
			HSSFSheet targetSheetEntity, int pStartRow, int pEndRow,
			int pPosition) {
		HSSFRow sourceRow = null;
		HSSFRow targetRow = null;
		HSSFCell sourceCell = null;
		HSSFCell targetCell = null;
		HSSFSheet sourceSheet = null;
		HSSFSheet targetSheet = null;
		Region region = null;

		int cType;
		int i;
		short j;
		int targetRowFrom;
		int targetRowTo;

		if ((pStartRow == -1) || (pEndRow == -1)) {
			return;
		}
		sourceSheet = sourceSheetEntity;
		targetSheet = targetSheetEntity;
		// 拷贝合并的单元格
		for (i = 0; i < sourceSheet.getNumMergedRegions(); i++) {
			region = sourceSheet.getMergedRegionAt(i);
			if ((region.getRowFrom() >= pStartRow)
					&& (region.getRowTo() <= pEndRow)) {
				targetRowFrom = region.getRowFrom() - pStartRow + pPosition;
				targetRowTo = region.getRowTo() - pStartRow + pPosition;
				region.setRowFrom(targetRowFrom);
				region.setRowTo(targetRowTo);
				targetSheet.addMergedRegion(region);
			}
		}

		// 拷贝行并填充数据
		for (i = pStartRow; i <= pEndRow; i++) {
			sourceRow = sourceSheet.getRow(i);
			if (sourceRow == null) {
				continue;
			}
			targetRow = targetSheet.createRow(i - pStartRow + pPosition);
			targetRow.setHeight(sourceRow.getHeight());
			for (j = sourceRow.getFirstCellNum(); j < sourceRow
					.getPhysicalNumberOfCells(); j++) {
				sourceCell = sourceRow.getCell(j);
				if (sourceCell == null) {
					continue;
				}
				targetCell = targetRow.createCell(j);
				targetCell.setCellStyle(sourceCell.getCellStyle());
				cType = sourceCell.getCellType();
				targetCell.setCellType(cType);
				switch (cType) {
				case HSSFCell.CELL_TYPE_BOOLEAN:
					targetCell.setCellValue(sourceCell.getBooleanCellValue());
					// System.out.println("--------TYPE_BOOLEAN:" +
					// targetCell.getBooleanCellValue());
					break;
				case HSSFCell.CELL_TYPE_ERROR:
					targetCell
							.setCellErrorValue(sourceCell.getErrorCellValue());
					// System.out.println("--------TYPE_ERROR:" +
					// targetCell.getErrorCellValue());
					break;
				case HSSFCell.CELL_TYPE_FORMULA:
					// parseFormula这个函数的用途在后面说明
					targetCell.setCellFormula(parseFormula(sourceCell
							.getCellFormula()));
					// System.out.println("--------TYPE_FORMULA:" +
					// targetCell.getCellFormula());
					break;
				case HSSFCell.CELL_TYPE_NUMERIC:
					targetCell.setCellValue(sourceCell.getNumericCellValue());
					// System.out.println("--------TYPE_NUMERIC:" +
					// targetCell.getNumericCellValue());
					break;
				case HSSFCell.CELL_TYPE_STRING:
					targetCell
							.setCellValue(sourceCell.getRichStringCellValue());
					// System.out.println("--------TYPE_STRING:" + i +
					// targetCell.getRichStringCellValue());
					break;
				}
			}
		}
	}


不知道图片怎么复制过来,谁能帮我完善这个方法,谢谢了!
2014年10月22日 17:13
目前还没有答案

相关推荐

    基于poi导出word以及图片

    在本教程中,我们将重点讨论如何利用Apache POI 3.13版本来导出Word文档,并结合图片操作。 首先,Apache POI提供了一个叫做HWPF(Horrible Word Processor Format)的API来处理老版的Word(.doc)文件,而XWPF...

    POI替换文本和图片,解决分割异常替换不完全的问题

    在这个场景中,我们关注的是如何使用POI中的`XWPFDocument`类来有效地替换文本和图片,并解决在分割或替换过程中可能出现的异常,以及保持原有的文档样式不变。 首先,让我们深入了解`XWPFDocument`类。它是Apache ...

    POI 完美生成带文字水印的excle

    在Java编程环境中,Apache POI库是一个非常强大的工具,它允许开发者读取、写入和修改Microsoft Office格式的文件,包括Excel(XLS和XLSX)。本教程将深入探讨如何利用Apache POI来创建带有文字水印的Excel文档。 ...

    poi操作word实例

    Apache POI 是一个开源项目,专门用于处理微软的Office文档格式,包括Word、Excel和PowerPoint等。在Java环境中,Apache POI 提供了API来读取、创建和修改这些文档。本实例主要关注的是使用POI操作Word文档,具体...

    POI操作PPT文档(导入,导出,读取,添加,拼接,替换文本,页面排序)

    POI 操作 PPT 文档(导入、导出、读取、添加、拼接、替换文本、页面排序) POI(Apache POI)是一款开源的Java库,用于读取和写入各种Microsoft Office文件格式,包括PPT文档。本文档将介绍如何使用POI操作PPT文档...

    poi操作word表格

    Apache POI是一个开源项目,主要用于处理Microsoft Office格式的文件,如Word(.doc/.docx)、Excel(.xls/.xlsx)和PowerPoint(.ppt/.pptx)。在本主题中,我们将聚焦于如何使用Apache POI来操作Word文档中的表格...

    poi操作ppt完整示例程序

    Apache POI 是一个开源项目,专门用于处理Microsoft Office格式的文件,如Word、Excel和PowerPoint。在本示例程序中,我们关注的是如何使用Java和Apache POI库来操作PowerPoint(PPT)文件。POI 提供了丰富的API,...

    apache-poi-3.17(最新稳定版本)

    对于Word文档处理,Apache POI提供了创建、修改文档内容的能力,包括段落、字体、图片、页眉和页脚等元素。开发者可以利用API实现自动化报告生成、文档模板填充等功能。 PowerPoint处理也是Apache POI的一大亮点。...

    POI-TL合并多个Word文档

    3. **复制内容**:遍历每个文档的段落(XWPFParagraph)、表格(XWPFTable)和其他元素,并将它们复制到目标文档中。每个元素都有自己的API,可以访问和操作其内容。 4. **合并文档**:创建一个新的XWPFDocument...

    java实现poi模板生成PPT文件代码

    PowerPoint文档由一系列的Slide对象组成,每个Slide包含Shape对象,如文本框、图片、图表等。POI提供了一套接口和类来操作这些对象。 3. **创建PPT模板**: 在使用Java生成PPT之前,你需要有一个基本的PPT模板,...

    java 使用POI合并两个word文档.docx

    Java 使用 POI 合并两个 Word 文档 Java 是一种流行的编程语言,POI(Poor Obfuscation Implementation)是一个流行的 Java 库,用于操作 Microsoft Office 文件,包括 Word 文档。合并两个 Word 文档是指将两个...

    POI合并多个相同的Excel或者合并Word文件

    3. 处理段落和图片:遍历每个源文件的段落和图片,复制它们到目标文件中。段落可以通过`Document.getParagraphs()`获取,图片则需要处理嵌入的`PackagePart`。 4. 图片处理:对于包含图片的Word文档,需要将图片数据...

    poiWord2003和Word2007包括图片完整转换成html 包括完整Jar包

    这通常涉及创建`&lt;p&gt;`标签表示段落,`&lt;h1&gt;`, `&lt;h2&gt;`等标签表示标题,`&lt;img&gt;`标签插入图片,以及使用CSS来复制原始Word文档的样式。 6. **事例代码**:压缩包中可能包含了一个示例代码,展示了如何使用POI完成上述...

    poi合并多个word文档并设置页码

    Apache POI是一个流行的Java库,专门用于处理Microsoft Office...通过理解这些基本操作,你可以进一步定制你的Word处理任务,例如添加自定义样式、图片或其他复杂格式。这个项目是一个很好的起点,帮助你掌握这些技能。

    使用POI读写PowerPoint文件(兼容ppt与pptx版本)

    Apache POI是一个流行的开源Java库,专门用于读写Microsoft Office格式的文件,包括PPT和PPTX。本篇将详细介绍如何使用Apache POI来处理这两种不同版本的PowerPoint文件。 首先,让我们了解一下Apache POI的基本...

    java导出图片到word文档

    安装Apache POI后,我们可以开始编写代码来导入图片并将其嵌入到Word文档中。 步骤如下: 1. **创建Word文档对象**:使用`XWPFDocument`类创建一个新的Word文档对象。 ```java XWPFDocument document = new ...

    JS POI EXCEL 原样式导出

    对于"原样式导出",这意味着在导出Excel时,不仅数据会被保留,而且包括单元格的字体、颜色、背景色、边框、对齐方式、公式、图表、图片等在内的所有样式和格式都会被完整地复制到新的Excel文件中。这对于需要精确...

    POI3.7Excel解析

    - 图表和图片:支持在Excel中插入和操作图表和图片。 - 数据流处理:使用SXSSF(Streaming Usermodel API)可以在内存有限的环境中处理大型Excel文件。 7. **性能和限制** POI 3.7版本可能在处理大量数据时遇到...

    POI 完美生成带文字水印的excle,可以完美打印

    在Excel文档中添加水印是一项常见的需求,尤其是在创建报告或者敏感数据时,为了保护内容不被非法复制,常会使用水印作为标识。Apache POI是Java领域中用于操作Microsoft Office格式文件的强大库,其中包括Excel...

    poi-3.7.jar

    - 插入、删除、移动和复制工作表、单元格,调整行列顺序。 - 设置单元格样式,包括字体、颜色、对齐方式、边框和填充。 - 在Word文档中插入文本、图片、表格,调整样式和布局。 - 在PowerPoint中添加幻灯片、...

Global site tag (gtag.js) - Google Analytics