一个J2EE项目中需要调用word域方面的需求,请高手教我,谢谢,分数不够再加! java操作word,excel:http://blog.csdn.net/ladofwind/archive/2004/12/21/224453.aspx 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 jacob包,网址 http://danadler.com/jacob/import com.jacob.activeX.*;import com.jacob.com.*;import java.io.File;public class testJab { public testJab() { } public static void testFindReplace() { try { String sInputDoc = "E:\\work\\testWord\\file_in.doc"; String sOutputDoc = "E:\\work\\testWord\\file_out.doc"; String sOldText = "[label:import:1]"; String sNewText = "I am some horribly long sentence, so long that [insert bullshit here]"; boolean tVisible = true; boolean tSaveOnExit = false; ///////////////////////////////////////////////////////////// ActiveXComponent oWord = new ActiveXComponent("Word.Application"); oWord.setProperty("Visible", new Variant(tVisible)); Object oDocuments = oWord.getProperty("Documents").toDispatch(); Object oDocument = Dispatch.call(oDocuments, "Open", sInputDoc).toDispatch(); Object oSelection = oWord.getProperty("Selection").toDispatch(); Object oFind = oWord.call(oSelection, "Find").toDispatch(); ////////////////////////////////////////////////////////////////////// Dispatch.put(oFind, "Text", sOldText); Dispatch.call(oFind, "Execute"); Dispatch.put(oSelection, "Text", sNewText); ////////////////////////////////////////////////////////////////////// Dispatch.call(oSelection, "MoveDown"); Dispatch.put(oSelection, "Text", "\nSo we got the next line including BR.\n"); ////////////////////////////////////////////////////////////////////// Object oFont = Dispatch.get(oSelection, "Font").toDispatch(); Dispatch.put(oFont, "Bold", "1"); Dispatch.put(oFont, "Italic", "1"); Dispatch.put(oFont, "Underline", "0"); Dispatch.put(oFont, "Size", "20"); Dispatch.put(oFont, "Color", "1,0,0,0"); ////////////////////////////////////////////////////////////////////// Object oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch(); Dispatch.put(oAlign, "Alignment", "1"); ////////////////////////////////////////////////////////////////////// Object oWordBasic = Dispatch.call(oWord, "WordBasic").getDispatch(); Dispatch.call(oWord, "SaveAs", sInputDoc); Dispatch.call(oDocument, "Close", new Variant(tSaveOnExit)); oWord.invoke("Quit", new Variant[0]); } catch (Exception eEe) { eEe.printStackTrace(); } } public static void main(String[] args) { testJab.testFindReplace(); } }第二个 iText包,网址 http://www.lowagie.com/iText/ 自带的demo有例子。 這個項目看來跟j2ee沒有關係, 可以試試 word(vba) -> odbc -> oracle (應該有很多保安性的問題, 不知道行不行) Ireport怎么获取子报表的返回值? java程序获取tomcat的虚拟目录的问题? Tomcat报错,大家帮我看看 hibernate的log4j文件问题 请教高手:web容器和j2ee容器的区别是什么? 请指教 范例遇到如下错误~,希望达人解答~,帮顶有分~ struts 中的图片存取 100分 急:请哪位兄台介绍几个可免费下载Java相关书籍的网址?? 高分求解,我已经看了很多资料了,还是没有解决 刚开是学java 很多都不懂 EJB/JMS/等 谢谢高手指教 log4j的问题
import com.jacob.com.*;
import java.io.File;public class testJab {
public testJab() {
} public static void testFindReplace() {
try {
String sInputDoc = "E:\\work\\testWord\\file_in.doc";
String sOutputDoc = "E:\\work\\testWord\\file_out.doc";
String sOldText = "[label:import:1]";
String sNewText = "I am some horribly long sentence, so long that [insert bullshit here]";
boolean tVisible = true;
boolean tSaveOnExit = false;
/////////////////////////////////////////////////////////////
ActiveXComponent oWord = new ActiveXComponent("Word.Application");
oWord.setProperty("Visible", new Variant(tVisible));
Object oDocuments = oWord.getProperty("Documents").toDispatch();
Object oDocument = Dispatch.call(oDocuments, "Open", sInputDoc).toDispatch();
Object oSelection = oWord.getProperty("Selection").toDispatch();
Object oFind = oWord.call(oSelection, "Find").toDispatch(); //////////////////////////////////////////////////////////////////////
Dispatch.put(oFind, "Text", sOldText);
Dispatch.call(oFind, "Execute");
Dispatch.put(oSelection, "Text", sNewText); //////////////////////////////////////////////////////////////////////
Dispatch.call(oSelection, "MoveDown");
Dispatch.put(oSelection, "Text", "\nSo we got the next line including BR.\n"); //////////////////////////////////////////////////////////////////////
Object oFont = Dispatch.get(oSelection, "Font").toDispatch();
Dispatch.put(oFont, "Bold", "1");
Dispatch.put(oFont, "Italic", "1");
Dispatch.put(oFont, "Underline", "0");
Dispatch.put(oFont, "Size", "20");
Dispatch.put(oFont, "Color", "1,0,0,0"); //////////////////////////////////////////////////////////////////////
Object oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch();
Dispatch.put(oAlign, "Alignment", "1");
//////////////////////////////////////////////////////////////////////
Object oWordBasic = Dispatch.call(oWord, "WordBasic").getDispatch();
Dispatch.call(oWord, "SaveAs", sInputDoc);
Dispatch.call(oDocument, "Close", new Variant(tSaveOnExit));
oWord.invoke("Quit", new Variant[0]);
}
catch (Exception eEe) {
eEe.printStackTrace();
}
} public static void main(String[] args) {
testJab.testFindReplace();
}
}
第二个
iText包,网址 http://www.lowagie.com/iText/ 自带的demo有例子。