见代码:
import java.io.File; import java.io.FileOutputStream; import java.util.Map.Entry; import org.docx4j.openpackaging.packages.WordprocessingMLPackage; import org.docx4j.openpackaging.parts.Part; import org.docx4j.openpackaging.parts.PartName; import org.docx4j.openpackaging.parts.WordprocessingML.BinaryPart; import org.docx4j.openpackaging.parts.WordprocessingML.BinaryPartAbstractImage; public class Docx4j_SaveDocxImg_S3_Test { public static void main(String[] args) throws Exception { Docx4j_SaveDocxImg_S3_Test t = new Docx4j_SaveDocxImg_S3_Test(); t.saveDocxImg("f:/saveFile/temp/word_docx4j_img_125.docx", "f:/saveFile/temp/docx4j_"); } /** * @Description: 提取word图片 */ public void saveDocxImg(String filePath, String savePath) throws Exception { WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage .load(new File(filePath)); for (Entry<PartName, Part> entry : wordMLPackage.getParts().getParts() .entrySet()) { if (entry.getValue() instanceof BinaryPartAbstractImage) { BinaryPartAbstractImage binImg = (BinaryPartAbstractImage) entry .getValue(); // 图片minetype String imgContentType = binImg.getContentType(); PartName pt = binImg.getPartName(); String fileName = null; if (pt.getName().indexOf("word/media/") != -1) { fileName = pt.getName().substring( pt.getName().indexOf("word/media/") + "word/media/".length()); } System.out.println(String.format("mimetype=%s,filePath=%s", imgContentType, pt.getName())); FileOutputStream fos = new FileOutputStream(savePath + fileName); ((BinaryPart) entry.getValue()).writeDataToOutputStream(fos); fos.close(); } } } }
全文完。
相关推荐
使用docx4J技术操作word的读写,使用docx4J技术操作word的读写,
本文将深入探讨如何使用Java库docx4j来实现多个Word文档的合并,并将结果转换为PDF格式。 docx4j是一款强大的开源Java库,专门用于处理Microsoft Office Open XML(OOXML)格式的文件,如.docx和.xlsx。它提供了一...
3. **读取文档**: `docx4j`可以读取`.docx`文件,提取其中的文本、图片、表格等信息,这对于数据分析或文档预览场景很有帮助。 4. **文档转换**: 支持将`.docx`文档转换成其他格式,如PDF、HTML、纯文本等,也可以...
2. **读取与解析**:通过docx4j,可以读取现有的.docx文件,并对其进行解析,提取文档中的内容,便于进行数据分析或内容提取。 3. **转换能力**:docx4j支持多种文件格式之间的转换,如将.docx转换为PDF、HTML或...
Docx4j是一个用于Java语言中处理Word文档、PowerPoint演示文稿和Excel表格的开源类库。它允许开发者通过XML解析文档内容,而不是采用DOM或SAX解析器。Docx4j使用JAXB(Java API for XML Binding)在内存中构建文档的...
《docx4j-2.6.0:深入解析Word文档处理库》 docx4j-2.6.0.tar.gz是一个TAR+GZIP压缩文件,它包含了一个名为docx4j-2.6.0的完整版本。这个压缩包的大小约为13,828,193字节,这在软件分发中是常见的大小,因为它包含...
【Docx4j中文版开发手册】是一份详细介绍如何使用Docx4j库来处理docx、pptx和xlsx文件的开发指南。Docx4j是一个Java库,它允许开发者在Java环境中创建、读取、修改这些OpenXML格式的文档。这个中文版手册对于那些...
标题中的"docx4.jar"实际上指的是`docx4j`库的核心组件,它允许开发者通过编程方式处理`.docx`、`.xlsx`和`.pptx`等文件。 `docx4j`的核心功能包括: 1. **文档创建**:可以创建全新的Office文档,设置样式、字体...
总的来说,这个工具提供了一种方法来提取Word文档中的表格数据,尽管它可能不是最全面或最高效的解决方案,但作为一个娱乐项目,它展示了如何利用Java和XML解析技术来处理Office文档的底层结构。在实际应用中,可能...
标题中的“提取word表格数据到Excel的vba程序代码”是指使用VBA(Visual Basic for Applications)编程语言,编写一个宏来实现从Microsoft Word文档中的表格自动抽取数据并存储到Excel工作表中。这个过程可以大大...
除了Apache POI,还有一些其他库也可以实现Word文档的文字提取,比如JODConverter(基于OpenOffice或LibreOffice的转换工具)和docx4j。它们各有优缺点,选择哪种取决于项目的需求,例如性能、兼容性、是否需要处理...
B: office word文件 ".doc", ".odt", ".docx", ".dotm", ".docm" C: wps文档 ".wps" D: office excel文件 ".xls", ".xlsx", ".xlsm", ".xltm" E: wps表格 ".et" F: office powerPoint文件 ".ppt", ".pptx", ".potm",...
$objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007'); $objWriter->save('output.docx'); ``` 7. **模板处理** PHPWord还支持基于模板的文档生成,可以预先设定好文档结构,然后...
在Word2007中,Microsoft引入了一种新的文件格式,称为Open XML(.docx),这是一种基于XML的文档存储标准。"word2007-xml存储标签属性说明文件.rar"是一个压缩包,其中包含的文档("word2007-xml存储标签属性说明...
在Plutext Enterprise中,docx4j可能被用来执行高级的文档操作,比如内容的提取、替换、合并,或者格式的转换。 Plutext Enterprise的标签还提到了“word excel marge”,这暗示了该软件的核心功能之一是文档的合并...
Aspose.Word是一款强大的.NET库,它允许开发者在不使用Microsoft Word的情况下操作Word文档。这个库提供了丰富的API,可以实现创建、读取、编辑以及转换Word文档。在这个特定的场景中,我们关注的是如何使用Aspose....
- 使用Apache POI或docx4j,可以读取docx文件中的文本、段落、图像等元素。这些库提供了API来遍历文档的结构,提取所需内容。 - 对于doc文件,由于其非XML结构,处理起来较为复杂。Apache POI的HWPF库可以帮助解析...
- DOCX:从Word 2007开始,Microsoft引入了基于XML的DOCX格式,它将文档内容分解成多个XML文件,存储在一个ZIP容器中,结构更清晰,易于解析。 3. **使用Apache POI 操作 DOC 和 DOCX** - **读取操作**:你可以...
在Java编程环境中,我们可以利用各种库来实现在Linux系统中将Word文档转换为PDF。这个过程通常涉及到对文件格式的理解,以及对操作系统调用的掌握。以下是一个详细的知识点介绍: 1. **Java与Linux交互**: Java...
此外,还有一些开源项目,如`docx4j`或`python-docx`,提供了更高级别的API来处理.docx文件,不过它们通常不是用C++编写的,因此与Qt集成可能需要额外的工作。 为了在Qt中读取.docx文件,你需要执行以下步骤: 1. ...