怎样把jsp各个控件中显示的内容导入到word文档中去!!!!(高手请进) http://community.csdn.net/Expert/topic/3673/3673099.xml?temp=.2826197 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用iText或jacrob,建议用iText纯java方式进行,但缺点就是不能读。iText本身提供有很好的例子。详细信息:http://www.lowagie.com/iText/ GJA106(中文字符) 能说的具体点吗 你那里有没有比较复杂的例子呢 看一下iText自带的例子够用了(iText_examples\src\com\lowagie\examples\rtf),基本满足要求,更复杂的我也没有处理过。 我现在想用jacob处理word ,iText 我没有用 好像不适合我做的这个 ,有谁用jacob处理过word文档的吗,分不够在加 最好能给我个比较复杂的例子 谢谢哦 个有感觉iTex使用起来比jacob方便:)jacob例子:import com.jacob.activeX.*;import com.jacob.com.*;import java.io.File;public class testJab { public testJab() { } public static void testAddOK() { String strModulNo = "00001\n"; String strModulSecret = "秘密等级★\n"; String strModulLimited = "年限\n"; String strModulTitle = "关于XXXXX的通知\n"; String strModulFGFuBegin = "-----------------------------------------------------\n"; String strModulContents ="建议:增加本系统与XX系统的接口。。实现(请蒙、肖负责提炼)"; String strModulFGFuEnd = "-----------------------------------------------------\n"; String strModulEndFormat = "抄送:xxxx xxx单位 yyy单位\nzzz集团"; ActiveXComponent objWord = null; Object objDocument = null; Object objContent = null; boolean tVisible = true; boolean tSaveOnExit = false; try { objWord = new ActiveXComponent("Word.Application"); //Application type objWord.setProperty("Visible", new Variant(tVisible)); //窗口可视化标志 Object objDOC = objWord.getProperty("Documents").toDispatch(); objContent = Dispatch.call(objDOC, "Add", "").toDispatch(); //创建新文档 Object oSelection = Dispatch.get(objWord, "Selection").toDispatch(); Object doc=Dispatch.get(objWord,"ActiveDocument").toDispatch(); // Object moSpace=Dispatch.get(doc,"ModelSpace").toDispatch(); //Text Format Object font = Dispatch.get(oSelection, "Font").toDispatch(); Object alignment = Dispatch.get(oSelection, "ParagraphFormat").toDispatch(); Object image = Dispatch.get(oSelection, "InLineShapes").toDispatch();//只能进行加图片功能,没有画线功能 /////////////////////////////写入文件号///////////////////////////// Dispatch.call(oSelection, "MoveDown"); //MoveDonw没有起到回车的作用,只是移到下一个位置 Dispatch.put(oSelection, "Text", strModulNo); //内容中必需带有回车符 Object oFont = Dispatch.get(oSelection, "Font").toDispatch(); Object oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch(); Dispatch.put(oAlign, "Alignment", "3"); //文件件呈号,居左 //////////////////////////////写秘密等级及保存年限///////////////////////////// Dispatch.call(oSelection, "MoveDown"); Dispatch.put(oSelection, "Text", strModulSecret); oFont = Dispatch.get(oSelection, "Font").toDispatch(); Dispatch.put(oFont, "Name", "黑体"); //选择字体 Dispatch.put(oFont, "Bold", "1"); Dispatch.put(oFont, "Italic", "0"); Dispatch.put(oFont, "Underline", "0"); Dispatch.put(oFont, "Size", "20"); Dispatch.put(oFont, "Color", "1,0,0,0"); oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch(); Dispatch.put(oAlign, "Alignment", "2"); //秘密等级居右 Dispatch.call(oSelection, "MoveDown"); Dispatch.put(oSelection, "Text", strModulLimited); //Dispatch.put(oFont, "Name","黑体"); //选择字体 oFont = Dispatch.get(oSelection, "Font").toDispatch(); Dispatch.put(oFont, "Bold", "1"); Dispatch.put(oFont, "Italic", "0"); Dispatch.put(oFont, "Underline", "0"); Dispatch.put(oFont, "Size", "20"); Dispatch.put(oFont, "Color", "1,0,0,0"); oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch(); Dispatch.put(oAlign, "Alignment", "2"); //保存年限居右 //////////////////////////////写文件标题///////////////////////////// Dispatch.call(oSelection, "MoveDown"); Dispatch.put(oSelection, "Text", strModulTitle); oFont = Dispatch.get(oSelection, "Font").toDispatch(); Dispatch.put(oFont, "Name", "黑体"); //选择字体 Dispatch.put(oFont, "Bold", "1"); Dispatch.put(oFont, "Italic", "0"); Dispatch.put(oFont, "Underline", "0"); Dispatch.put(oFont, "Size", "20"); Dispatch.put(oFont, "Color", "1,0,0,0"); oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch(); Dispatch.put(oAlign, "Alignment", "1"); //文件标题居中 //////////////////////////////画线///////////////////////////// Dispatch.call(oSelection, "MoveDown"); //Object objAddLine = objWord.invoke(objDOC,"AddLine",Dispatch.Method,new Object[]{},new int [1]).toDispatch(); //Dispatch.put(oSelection,Dispatch.DISPID_FILLSTYLE, "Shape"); //Dispatch.put(doc,"Range", "100, 100, 60, 20"); //Dispatch.put(doc,"AddLine", "1, 0, 0, 0"); //Dispatch.put(oSelection, "AddLine", "100, 100, 60, 20"); Object shape = Dispatch.get(oSelection, "ShapeRange").toDispatch(); double[] point1 = {0.0, 0.0, 0.0}; double[] point2 = {10.0, 10.0, 0.0}; //Create SafeArrays SafeArray sap1 = new SafeArray(Variant.VariantDouble, 3); SafeArray sap2 = new SafeArray(Variant.VariantDouble, 3); //populate them sap1.fromDoubleArray(point1); sap2.fromDoubleArray(point2); //wrap them in Variant. Is this correct? Variant vt1 = new Variant(); Variant vt2 = new Variant(); vt1.putSafeArray(sap1); vt1.putSafeArray(sap2); //This next line throws an exception Dispatch.call(oSelection, "AddLine"); Object acadLine = Dispatch.invoke (oSelection, "AddLine", Dispatch.Method, new Object[] {vt1, vt2} , new int[1]).toDispatch(); //Dispatch.put(oSelection,"Shadow","true"); //Dispatch.put(shape,"AddLine","100, 100, 60, 20"); //Dispatch.call(oSelection, "ShapeRange"); //Dispatch.call(image, "AddLine", "100, 100, 60, 20"); oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch(); Dispatch.put(oAlign, "Alignment", "1"); //文件标题居中 //////////////////////////////写文件隔符-开始///////////////////////////// Dispatch.call(oSelection, "MoveDown"); Dispatch.put(oSelection, "Text", strModulFGFuBegin); oFont = Dispatch.get(oSelection, "Font").toDispatch(); Dispatch.put(oFont, "Name", "黑体"); //选择字体 Dispatch.put(oFont, "Bold", "1"); Dispatch.put(oFont, "Italic", "0"); Dispatch.put(oFont, "Underline", "0"); Dispatch.put(oFont, "Size", "20"); Dispatch.put(oFont, "Color", "1,0,0,0"); oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch(); Dispatch.put(oAlign, "Alignment", "1"); //写文件隔符居中 //////////////////////////////写文件内容///////////////////////////// Dispatch.call(oSelection, "MoveDown"); Dispatch.put(oSelection, "Text", strModulContents); oFont = Dispatch.get(oSelection, "Font").toDispatch(); Dispatch.put(oFont, "Bold", "0"); Dispatch.put(oFont, "Italic", "0"); Dispatch.put(oFont, "Underline", "0"); Dispatch.put(oFont, "Size", "12"); Dispatch.put(oFont, "Color", "0,0,0,0"); oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch(); Dispatch.put(oAlign, "Alignment", "3"); //文件内容居左 //////////////////////////////写文件隔符-结束///////////////////////////// Dispatch.call(oSelection, "MoveDown"); Dispatch.put(oSelection, "Text", strModulFGFuEnd); oFont = Dispatch.get(oSelection, "Font").toDispatch(); Dispatch.put(oFont, "Bold", "1"); Dispatch.put(oFont, "Italic", "0"); Dispatch.put(oFont, "Underline", "0"); Dispatch.put(oFont, "Size", "20"); Dispatch.put(oFont, "Color", "1,0,0,0"); oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch(); Dispatch.put(oAlign, "Alignment", "1"); //写文件隔符居中 //////////////////////////////写文件结束符///////////////strModulEndFormat Dispatch.call(oSelection, "MoveDown"); Dispatch.put(oSelection, "Text", strModulEndFormat); oFont = Dispatch.get(oSelection, "Font").toDispatch(); Dispatch.put(oFont, "Bold", "1"); Dispatch.put(oFont, "Italic", "0"); Dispatch.put(oFont, "Underline", "0"); Dispatch.put(oFont, "Size", "20"); Dispatch.put(oFont, "Color", "1,0,0,0"); oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch(); Dispatch.put(oAlign, "Alignment", "3"); //写文件隔符居左 Dispatch.call(oSelection, "MoveDown"); Dispatch.put(oSelection, "Text", "\nSo we got the next line including BR.\n"); ////////////////////////////////////////////////////////////////////// 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"); //Dispatch.put(oFont, "centre", "1"); //Dispatch.put(oFont, "block", "1"); //Object range=Dispatch.get(oSelection,"Range").toDispatch(); // Dispatch.put(range, "Color", "1,0,0,0"); // Dispatch.call(image, "AddPicture", "c:/jsplife.png"); Dispatch.call(oSelection, "TypeParagraph"); Dispatch.put(alignment, "Alignment", "3"); ////////////////////////////////////////////////////////////////////// oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch(); Dispatch.put(oAlign, "Alignment", "1"); Dispatch.call(oSelection, "TypeParagraph"); //To jump page Dispatch.call(oSelection, "InsertBreak"); } finally { Dispatch.call(objContent, "SaveAs", "c:/test.doc"); //Save the document objWord.invoke("Quit", new Variant[] {}); //Quit the application } } 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"); // Dispatch.put(oAlign, "Color", "1"); ////////////////////////////////////////////////////////////////////// Object oWordBasic = Dispatch.call(oWord, "WordBasic").getDispatch(); Dispatch.call(oWord, "SaveAs", sInputDoc); //Dispatch.call(oWordBasic, "FileSave", sInputDoc); Dispatch.call(oDocument, "Close", new Variant(tSaveOnExit)); oWord.invoke("Quit", new Variant[0]); ////////////////////////////////////////////////////////////////////// /* String sImgFile = "e:\\jsplife.png"; Dispatch.call(oSelection, "MoveDown"); Object oImage = Dispatch.get(oSelection, "InLineShapes").toDispatch(); Dispatch.call(oImage, "AddPicture", sImgFile); Dispatch.call(oDocument, "Close", new Variant(tSaveOnExit)); //////////////////////////////////////////////////////////////////////*/ ////////////////////////////////////////////////////////////////////// } catch (Exception eEe) { eEe.printStackTrace(); } } public static void main(String[] args) { testJab.testFindReplace(); //testJab.testAdd(); //testJab.testAddOK(); testJab.testAddLine(); } } 这个例子成功了的吗 我现在写了一个 只能向word里面加一行文字 ,我怎么改也不能加2行文字进去,怎么办啊 这个例子中的testAddLine()在哪里定义了? 这个例子中的testAddLine()在哪里定义了? 自定义标签 java怎么取得当前JAVA系统运行中实时的内存的使用率 :21端口号怎么在<a href=""></a>中显示出来? 为什么 文件不能更新 spring中开发加上hibernate开发需要那些包 FadeOut.class如何改变字体大小 现在市场上最牛的word插件,可提供演示 高分索求个人主页源代码!!!! java可以调用COM组件吗?如何调用?急问!!!! 关于jsp\Servlet的生命周期的问题,我被弄晕了,Up…… 在线等,一个逻辑判断问题!!!请各位英雄帮帮忙!! 这个function还能优化么?
iText本身提供有很好的例子。详细信息:http://www.lowagie.com/iText/
import com.jacob.com.*;
import java.io.File;public class testJab {
public testJab() {
} public static void testAddOK() {
String strModulNo = "00001\n";
String strModulSecret = "秘密等级★\n";
String strModulLimited = "年限\n";
String strModulTitle = "关于XXXXX的通知\n";
String strModulFGFuBegin = "-----------------------------------------------------\n";
String strModulContents ="建议:增加本系统与XX系统的接口。。实现(请蒙、肖负责提炼)";
String strModulFGFuEnd = "-----------------------------------------------------\n";
String strModulEndFormat = "抄送:xxxx xxx单位 yyy单位\nzzz集团"; ActiveXComponent objWord = null;
Object objDocument = null;
Object objContent = null;
boolean tVisible = true;
boolean tSaveOnExit = false;
try {
objWord = new ActiveXComponent("Word.Application"); //Application type
objWord.setProperty("Visible", new Variant(tVisible)); //窗口可视化标志
Object objDOC = objWord.getProperty("Documents").toDispatch();
objContent = Dispatch.call(objDOC, "Add", "").toDispatch(); //创建新文档
Object oSelection = Dispatch.get(objWord, "Selection").toDispatch();
Object doc=Dispatch.get(objWord,"ActiveDocument").toDispatch();
// Object moSpace=Dispatch.get(doc,"ModelSpace").toDispatch();
//Text Format
Object font = Dispatch.get(oSelection, "Font").toDispatch();
Object alignment = Dispatch.get(oSelection, "ParagraphFormat").toDispatch(); Object image = Dispatch.get(oSelection, "InLineShapes").toDispatch();//只能进行加图片功能,没有画线功能 /////////////////////////////写入文件号/////////////////////////////
Dispatch.call(oSelection, "MoveDown"); //MoveDonw没有起到回车的作用,只是移到下一个位置
Dispatch.put(oSelection, "Text", strModulNo); //内容中必需带有回车符
Object oFont = Dispatch.get(oSelection, "Font").toDispatch();
Object oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch();
Dispatch.put(oAlign, "Alignment", "3"); //文件件呈号,居左 //////////////////////////////写秘密等级及保存年限/////////////////////////////
Dispatch.call(oSelection, "MoveDown");
Dispatch.put(oSelection, "Text", strModulSecret);
oFont = Dispatch.get(oSelection, "Font").toDispatch();
Dispatch.put(oFont, "Name", "黑体"); //选择字体
Dispatch.put(oFont, "Bold", "1");
Dispatch.put(oFont, "Italic", "0");
Dispatch.put(oFont, "Underline", "0");
Dispatch.put(oFont, "Size", "20");
Dispatch.put(oFont, "Color", "1,0,0,0");
oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch();
Dispatch.put(oAlign, "Alignment", "2"); //秘密等级居右 Dispatch.call(oSelection, "MoveDown");
Dispatch.put(oSelection, "Text", strModulLimited);
//Dispatch.put(oFont, "Name","黑体"); //选择字体
oFont = Dispatch.get(oSelection, "Font").toDispatch();
Dispatch.put(oFont, "Bold", "1");
Dispatch.put(oFont, "Italic", "0");
Dispatch.put(oFont, "Underline", "0");
Dispatch.put(oFont, "Size", "20");
Dispatch.put(oFont, "Color", "1,0,0,0");
oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch();
Dispatch.put(oAlign, "Alignment", "2"); //保存年限居右 //////////////////////////////写文件标题/////////////////////////////
Dispatch.call(oSelection, "MoveDown");
Dispatch.put(oSelection, "Text", strModulTitle);
oFont = Dispatch.get(oSelection, "Font").toDispatch();
Dispatch.put(oFont, "Name", "黑体"); //选择字体
Dispatch.put(oFont, "Bold", "1");
Dispatch.put(oFont, "Italic", "0");
Dispatch.put(oFont, "Underline", "0");
Dispatch.put(oFont, "Size", "20");
Dispatch.put(oFont, "Color", "1,0,0,0");
oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch();
Dispatch.put(oAlign, "Alignment", "1"); //文件标题居中 //////////////////////////////画线/////////////////////////////
Dispatch.call(oSelection, "MoveDown");
//Object objAddLine = objWord.invoke(objDOC,"AddLine",Dispatch.Method,new Object[]{},new int [1]).toDispatch();
//Dispatch.put(oSelection,Dispatch.DISPID_FILLSTYLE, "Shape");
//Dispatch.put(doc,"Range", "100, 100, 60, 20");
//Dispatch.put(doc,"AddLine", "1, 0, 0, 0");
//Dispatch.put(oSelection, "AddLine", "100, 100, 60, 20");
Object shape = Dispatch.get(oSelection, "ShapeRange").toDispatch();
double[] point1 = {0.0, 0.0, 0.0};
double[] point2 = {10.0, 10.0, 0.0};
//Create SafeArrays
SafeArray sap1 = new SafeArray(Variant.VariantDouble, 3);
SafeArray sap2 = new SafeArray(Variant.VariantDouble, 3);
//populate them
sap1.fromDoubleArray(point1);
sap2.fromDoubleArray(point2);
//wrap them in Variant. Is this correct?
Variant vt1 = new Variant();
Variant vt2 = new Variant();
vt1.putSafeArray(sap1);
vt1.putSafeArray(sap2); //This next line throws an exception
Dispatch.call(oSelection, "AddLine");
Object acadLine = Dispatch.invoke
(oSelection, "AddLine", Dispatch.Method, new Object[] {vt1, vt2}
, new int[1]).toDispatch(); //Dispatch.put(oSelection,"Shadow","true");
//Dispatch.put(shape,"AddLine","100, 100, 60, 20");
//Dispatch.call(oSelection, "ShapeRange");
//Dispatch.call(image, "AddLine", "100, 100, 60, 20");
oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch();
Dispatch.put(oAlign, "Alignment", "1"); //文件标题居中 //////////////////////////////写文件隔符-开始/////////////////////////////
Dispatch.call(oSelection, "MoveDown");
Dispatch.put(oSelection, "Text", strModulFGFuBegin);
oFont = Dispatch.get(oSelection, "Font").toDispatch();
Dispatch.put(oFont, "Name", "黑体"); //选择字体
Dispatch.put(oFont, "Bold", "1");
Dispatch.put(oFont, "Italic", "0");
Dispatch.put(oFont, "Underline", "0");
Dispatch.put(oFont, "Size", "20");
Dispatch.put(oFont, "Color", "1,0,0,0");
oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch();
Dispatch.put(oAlign, "Alignment", "1"); //写文件隔符居中 //////////////////////////////写文件内容/////////////////////////////
Dispatch.call(oSelection, "MoveDown");
Dispatch.put(oSelection, "Text", strModulContents);
oFont = Dispatch.get(oSelection, "Font").toDispatch();
Dispatch.put(oFont, "Bold", "0");
Dispatch.put(oFont, "Italic", "0");
Dispatch.put(oFont, "Underline", "0");
Dispatch.put(oFont, "Size", "12");
Dispatch.put(oFont, "Color", "0,0,0,0");
oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch();
Dispatch.put(oAlign, "Alignment", "3"); //文件内容居左
Dispatch.call(oSelection, "MoveDown");
Dispatch.put(oSelection, "Text", strModulFGFuEnd);
oFont = Dispatch.get(oSelection, "Font").toDispatch();
Dispatch.put(oFont, "Bold", "1");
Dispatch.put(oFont, "Italic", "0");
Dispatch.put(oFont, "Underline", "0");
Dispatch.put(oFont, "Size", "20");
Dispatch.put(oFont, "Color", "1,0,0,0");
oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch();
Dispatch.put(oAlign, "Alignment", "1"); //写文件隔符居中 //////////////////////////////写文件结束符///////////////strModulEndFormat
Dispatch.call(oSelection, "MoveDown");
Dispatch.put(oSelection, "Text", strModulEndFormat);
oFont = Dispatch.get(oSelection, "Font").toDispatch();
Dispatch.put(oFont, "Bold", "1");
Dispatch.put(oFont, "Italic", "0");
Dispatch.put(oFont, "Underline", "0");
Dispatch.put(oFont, "Size", "20");
Dispatch.put(oFont, "Color", "1,0,0,0");
oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch();
Dispatch.put(oAlign, "Alignment", "3"); //写文件隔符居左 Dispatch.call(oSelection, "MoveDown");
Dispatch.put(oSelection, "Text", "\nSo we got the next line including BR.\n"); //////////////////////////////////////////////////////////////////////
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");
//Dispatch.put(oFont, "centre", "1");
//Dispatch.put(oFont, "block", "1");
//Object range=Dispatch.get(oSelection,"Range").toDispatch();
// Dispatch.put(range, "Color", "1,0,0,0"); //
Dispatch.call(image, "AddPicture", "c:/jsplife.png");
Dispatch.call(oSelection, "TypeParagraph");
Dispatch.put(alignment, "Alignment", "3"); //////////////////////////////////////////////////////////////////////
oAlign = Dispatch.get(oSelection, "ParagraphFormat").toDispatch();
Dispatch.put(oAlign, "Alignment", "1");
Dispatch.call(oSelection, "TypeParagraph"); //To jump page
Dispatch.call(oSelection, "InsertBreak");
}
finally {
Dispatch.call(objContent, "SaveAs", "c:/test.doc"); //Save the document
objWord.invoke("Quit", new Variant[] {}); //Quit the application
}
}
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");
// Dispatch.put(oAlign, "Color", "1");
//////////////////////////////////////////////////////////////////////
Object oWordBasic = Dispatch.call(oWord, "WordBasic").getDispatch();
Dispatch.call(oWord, "SaveAs", sInputDoc);
//Dispatch.call(oWordBasic, "FileSave", sInputDoc);
Dispatch.call(oDocument, "Close", new Variant(tSaveOnExit));
oWord.invoke("Quit", new Variant[0]); //////////////////////////////////////////////////////////////////////
/* String sImgFile = "e:\\jsplife.png";
Dispatch.call(oSelection, "MoveDown");
Object oImage = Dispatch.get(oSelection, "InLineShapes").toDispatch();
Dispatch.call(oImage, "AddPicture", sImgFile);
Dispatch.call(oDocument, "Close", new Variant(tSaveOnExit));
//////////////////////////////////////////////////////////////////////*/
////////////////////////////////////////////////////////////////////// }
catch (Exception eEe) {
eEe.printStackTrace();
}
} public static void main(String[] args) {
testJab.testFindReplace();
//testJab.testAdd();
//testJab.testAddOK();
testJab.testAddLine();
}
}