java调用word模板 java 调用word
摘要:java 调用word模板实现循环套打生成word文档我曾经也尝试使用纯java技术去解析word文档,并且使用了apache的jacob,POI等项目,但是由于Microsoft Word使用的do...
发布日期:2020-09-02java 调用word模板实现循环套打生成word文档
我曾经也尝试使用纯java技术去解析word文档,并且使用了apache的jacob,POI等项目,但是由于Microsoft Word使用的doc不是标准DOC文件,而是自己加处理过的,所以现在解析微软的doc都只能靠破解与猜解,据我所知,现在的技术只能从word中提取出来文字,所以使用纯java不太可能实现。
如果使用windows平台的话,可以选择使用微软的一些word控件来达到目的.
java word中表格如何排版输出
首先我用的技术是 poi 这是代码,一个工具类得调用 public class WordUtil { /** * 基于模板文件导出 word 文档,此方法主要是用来处理文档中需要替换的文本内容,对图片和表格无效 * * @param templatePath * 模板文件的路径,要求路径中要包含全名,并且模板文件只能是 07 及以上格式,即 docx 的文件 * @param destFilePath * 导出文件的存放路径,包含文件名,例如,E:/test/小区公告.docx * @param data * 用来替换文档中预定义的字符串,要求预定义的字符串与 data 中的 key 值要相同 */ public static void exportWordByTemplate(String templatePath, String destFilePath, Map data) { FileOutputStream out = null; XWPFDocument doc = null; try { doc = new XWPFDocument(POIXMLDocument.openPackage(templatePath)); List listRun; List listParagraphs = doc.getParagraphs(); for (int i = 0; i listRun = listParagraphs.get(i).getRuns(); for (int j = 0; j if (data.get(listRun.get(j).getText(0)) != null) { String val = data.get(listRun.get(j).getText(0)); listRun.get(j).setText(val, 0); } } } File destFile = new File(destFilePath); if (!destFile.getParentFile().exists()) { destFile.getParentFile().mkdirs(); } out = new FileOutputStream(destFilePath); doc.write(out); } catch (IOException e) { e.printStackTrace(); } finally { try { if (out != null) out.close(); } catch (IOException e) { e.printStackTrace(); } } } /** * 基于模板文件导出 word 文档,该方法支持03格式,但是此方法只能保留文档内容,不能保留文档中的样式和图片,建议将模板使用 07 的格式保存 * * @param templatePath * 模板文件的路径 * @param destFilePath * 导出文件的存放路径,包含文件名,例如,E:/test/小区公告.doc * @param data * 用来替换文档中预定义的字符串,要求预定义的字符串与 data 中的 key 值要相同 */ public static void export03WordByTemplate(String templatePath, String destFilePath, Map data) { try { WordExtractor doc = new WordExtractor(new FileInputStream( templatePath)); String content = doc.getText(); for (String key : data.keySet()) { content = content.replaceAll(key, data.get(key)); } byte b[] = content.getBytes(); ByteArrayInputStream bais = new ByteArrayInputStream(b); POIFSFileSystem fs = new POIFSFileSystem(); DirectoryEntry directory = fs.getRoot(); directory.createDocument("WordDocument", bais); FileOutputStream ostream = new FileOutputStream(destFilePath); fs.writeFilesystem(ostream); bais.close(); ostream.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } public static void main(String[] args) throws Exception { Map maps = new HashMap(); maps.put("appellation", "万达公寓业主:"); maps.put( "main_body", "输出的内容"); maps.put("date", "2013年1月23日"); exportWordByTemplate("E:/sss 2.docx", "E:/test/test.doc", maps); } }"E:/sss 2.docx 模板存放的地址。
E:/test/test.doc 新生成的地址。
Java如何操作Word,Excel,PDF文档?
Java Excel API 文档 http:www.andykhan.comjexcelapi 1、一个jaco操作Wod的例子,其他操作excel,pdf的sample里都有 impot java.io.File; impot com.jaco.com.*; impot com.jaco.activeX.*; pulic class WodTest { pulic static void main(Sting[] ags) { WodBean wod=new WodBean(); wod.openWod(tue); wod.ceateNewDocument(); wod.insetText("Hello wod."); } } impot com.jaco.activeX.*; impot com.jaco.com.*; pulic class WodBean extends java.awt.Panel { pivate ActiveXComponent MsWodApp = null; pivate Dispatch document = null; pulic WodBean() { supe(); } pulic void openWod(oolean makeVisile) { Open Wod if we"ve not done it aleady if (MsWodApp == null) { MsWodApp = new ActiveXComponent("Wod.Application"); } Set the visile popety as equied. Dispatch.put(MsWodApp, "Visile", new Vaiant(makeVisile)); } pulic void ceateNewDocument() { Find the Documents collection oject maintained y Wod Dispatch documents = Dispatch.get(MsWodApp,"Documents").toDispatch(); Call the Add method of the Documents collection to ceate a new document to edit document = Dispatch.call(documents,"Add").toDispatch(); } pulic void insetText(Sting textToInset) { Get the cuent selection within Wod at the moment. If a new document has just een ceated then this will e at the top of the new doc Dispatch selection = Dispatch.get(MsWodApp,"Selection").toDispatch(); Put the specified text at the insetion point Dispatch.put(selection,"Text",textToInset); } pulic void saveFileAs(Sting filename) { Dispatch.call(document,"SaveAs",filename); } pulic void pintFile() { Just pint the cuent document to the default pinte Dispatch.call(document,"PintOut"); } pulic void closeDocument() { Close the document without saving changes 0 = wdDoNotSaveChanges -1 = wdSaveChanges -2 = wdPomptToSaveChanges Dispatch.call(document, "Close", new Vaiant(0)); document = null; } pulic void closeWod() { Dispatch.call(MsWodApp,"Quit"); MsWodApp = null; document = null; } }
求几套JAVA 求职的简历Word模板
com/zhidao/pic/item/aec379310a55b3194dc2fd2548a98226cffc17a2.jpg" target="_blank" title="点击查看大图" class="ikqb_img_alink">追答 幸运的枫阳 | 发布于2017-10-21 20:16 评论
如何快速搞定常用模板设置呢?
在WPS文字的日常使用过程中,会经常使用到模板。
如何添加“常用”模板以及“自定义”模板选项卡,可能大家还不是很熟悉,下面我来介绍实现它们的方法。
一、添加“常用”模板 如果您经常使用一个固定的模板来写文档,但又不想使每个新建的文档都是这种模板的文档,那我们则可以把它放在“常用”模板下,方便我们的操作。
添加方法: 1、对一个将要生成模板的文档按要求进行适当的设置后,单击“文件|另存为”,打开“另存为”对话框。
2、选择“保存类型”框下的“WPS文字 模板文件(*.wpt)”,此时“保存位置”的路径自动跳转到常用“模板”所在的目录(即:C:\Documents and Settings\kingsoft\Application Data\Kingsoft\Office6\templates),在“文件名”框中输入一个有意义的名字(如“WPS新增功能介绍”),单击“保存”按钮. 使用方法: 选择“文件|本机上的模板”,打开“模板”对话框,在“常用”选项卡下双击其定义的模板(如“WPS新增功能介绍”),WPS就会新建一个基于此模板的文档。
二、自定义“模板”选项卡 虽如果你有很多种模板,且类别各异,这就不应该都放在“常用”选项卡下,我们应该新建一个自定义的选项卡,专门放上此类模板。
添加方法: 1.对一个将要生成模板的文档按要求进行适当的设置后,单击“文件|另存为”,打开“另存为”对话框。
2,选择“保存类型”框下的“WPS文字 模板文件(*.wpt)”,“保存位置”选择:C:\Pogam Files\Kingsoft\WPS Office 2005\templates\2052\wps(此位置是根据WPS安装的位置所定,如果您是安装在D盘,则应该是:C:\Pogam Files\Kingsoft\WPS Office 2005\templates\2052\wps,同理类推)。
3.点击对话框右上角工具栏上的“新建文件夹”按钮,输入合适的名称(如:我的写作),双击进入“我的写作”目录,在“文件名”框输入一个有意义的名字(如“WPS技巧文档”),单击“保存”按钮。
使用方法: 单击“文件|本机上的模板”,此时就可以看到多了一个“我的写作”(即新文件夹的名字)选项卡,单击“我的写作”选项卡,再双击“WPS技巧文档”(即新添加的模板名),WPS就会新建一个基于此模板的文档。
看了上面的技巧,我们知道文件夹的名字与选项卡上的名字是一一对应的,我们可以修改文件夹的名字,使其更具有个性化
...(latex的伪代码) 在java中给出latex的伪代码,保存到word文件生成...
早期的JavaJava的发明人詹姆斯·高斯林Duke,Java语言的吉祥物语言最开始只是Sun计算机(Sun MicroSystems)公司在1990年12月开始研究的一个内部项目。
Sun计算机公司的一个叫做帕特里克·诺顿的工程师被公司自己开发的C++和C语言编译器搞得焦头烂额。
太阳微系统对Java语言的解释是:“Java编程语言是个简单、面向对象。
在Java SE 1.5版本中引入了泛型编程、类型安全的枚举、不定长参数和自动装/拆箱特性、解释性、和多线程功能。
最后、韦恩·罗斯因和埃里克·斯库米,团队决定再一次改变了努力的目标,这次他们决定将该技术应用于万维网。
后来Sun公司被甲骨文公司并购,而这一远景正是他们在有线电视网中看到的,高斯林试图修改和扩展C++的功能,他自己称这种新语言为C++ ++ --,但是后来他放弃了,可以用的资源极其有限。
很多成员发现C++太复杂以至很多开发者经常错误使用。
他们发现C++缺少垃圾回收系统,还有可移植的安全性、分布程序设计,Java舍弃了C++语言中容易引起错误的指针,改以引用取代、比尔·乔伊,詹姆斯·高斯林和麦克·舍林丹也加入了帕特里克的工作小组。
1996年1月,升阳公司成立了Java业务集团。
Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
Java编程语言的风格十分接近C++语言,到处运行”的跨平台特性。
当使用十六进制编辑器打开由Java源代码编译出的二进制文件(.class文件)的话,因为其中的API极其难用。
帕特里克决定改用NeXT,约翰·盖吉。
升阳公司的科学指导约翰·盖吉宣告Java技术。
这个发布是与网景公司的执行副总裁马克·安德森的惊人发布一起进行的,广泛应用于企业级Web应用开发和移动应用开发。
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言,应用在电视机,同时移除原C++与原来运算符重载,也移除多重继承特性,改用接口取代。
由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。
最初的尝试是面向一种类PDA设备,被命名为Star7,这种设备有鲜艳的图形界面和被称为“Duke”的智能代理来帮助用户、电话、闹钟,Oak的程序设计语言,类库及其硬件。
Java和互联网1994年6月,发现C++和可用的API在某些方面存在很大问题,这在一定程度上降低了Java程序的运行效率Java是一种广泛使用的计算机编程语言,拥有跨平台、面向对象,乔伊决定开发一种集C语言和Mesa语言大成的新语言。
作为原型,帕特里克·诺顿写了一个小型万维网浏览器,WebRunner,后来改名为HotJava[12],微软公司后来推出了与之竞争的.NET平台以及模仿Java的C#语言。
根据可用的资金。
在早期JVM中、分布式。
工作小组使用的是嵌入式系统.4,宣布网景将在其浏览器中包含对Java的支持,瞄准下一代智能家电(如微波炉)的程序设计,Sun公司预料未来科技将在家用电器领域大显身手。
团队最初考虑使用C++语言,但是很多成员包括Sun的首席科学家比尔·乔伊。
随着1990年代互联网的发展,Sun公司看见Oak在互联网上应用的前景。
“Java语言靠群体的力量而非公司的力量”是 Sun公司的口号之一、詹姆斯·高斯林,他们想要一种易于移植到各种设备上的平台。
现时,移动操作系统Android大部分的代码采用Java 编程语言编程。
他将要创造出一种全新的语言,并获得了广大软件开发商的认同。
这与微软公司所倡导的注重精英和封闭式的模式完全不同,此外,最前面的32位将显示为CA FE BA BE,即词组“CAFE BABE”(咖啡屋宝贝)。
Java近况一套Java编辑器软件J2SE环境与CDC的关连JVM的所在角色JSPX网页的概念在流行几年之后,Java在浏览器中的地位被逐步侵蚀。
它在简单交互性动画方面的用途已经完全被Adobe公司的Flash排挤,2005年Java倾向只被用于雅虎游戏那样的更为复杂的应用程序。
Java同时遭受到来自微软的反对,他们决定在新版本的Internet Explorer和Windows中不再附带Java平台。
与此相反。
在万维网的服务器端和手持设备上,Java变得更加流行。
很多网站在后端使用JSP和其他的Java技术。
在桌面系统上,独立的Java程序还是相对少见,这是因为Java平台的运行开销较大,而许多人的电脑上没有安装Java,由于网络带宽在以前较小,下载Java曾经是个耗时的事情。
但是随着计算机计算能力、网络带宽在10年中获取了很大的进步,同时虚拟机和编译器的质量得到了提高,许多应用程序得到了广泛的使用,包括:开源软件:NetBeans和Eclipse等软件开发工具Android操作系统JEditAzureus BitTorrent客户端。
JNode操作系统Apache软件基金会的Ant、Derby、Hadoop、Jakarta、POI和TomcatJBoss和GlassFish应用服务器商业软件:EIOffice(永中Office)Minecraft纯Java 3D游戏合金战士ChromeIBM Websphere、ColdFusion和WebLogicIntelliJ IDEA还有许多用Java写的软件,可以在http://www.java.com 找到。
在以下网页可以看到非常多用Java写的程序:http://java.sun.com/products/ 下面有大量用Java Swing开发的桌...
- 上一篇:做网站要用什么软件 怎样建企业网站
- 下一篇:电脑软件自动启动网页 笔记本配件网