java操作word,excel:
http://blog.csdn.net/ladofwind/archive/2004/12/21/224453.aspx

解决方案 »

  1.   

    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有例子。
      

  2.   

    這個項目看來跟j2ee沒有關係, 可以試試 word(vba) -> odbc -> oracle (應該有很多保安性的問題, 不知道行不行)