當前位置:首頁 » 編程語言 » javaxmlword

javaxmlword

發布時間: 2022-06-14 23:04:34

java 導出 word 怎麼合並列。我用的是xml輸出的辦法,

cell1.setRowspan( 3 );

㈡ 如何在java中操作word

想用java操作word文件?jacob是個不錯的選擇,也就是java-com橋,你可以在http://sourceforge.net/projects/jacob-project/下載,我下載的版本是1.12,注意版本太低的話可能會報錯。

如果沒有特殊需求,可以直接使用jacob_*.zip中提供的jacob.jar和jacob.dll。把jacob.dll文件放在系統可以找得到的
路徑上,一般放c:/windows/system32下就行了,注意你用的jacob.dll文件和你的jacob.jar包要匹配,否則會報錯哦!


如果想自己編譯也很簡單,把jacob_*_src.zip解開,建個工程,在build.xml中稍作配置即可:

<property name="JDK" value="D:\Java\j2sdk1.4.2_13"/>

<property name="MSDEVDIR" value="D:\Microsoft Visual Studio\VC98"/>

<property name="version" value="1.12"/>

看出來了嗎,你的機器上需要有JDK和VC環境,VC是用來生成jacob.dll文件的,如果編譯時說找不到MSPDB60.DLL,那就在你的
Microsoft Visual Studio目錄下搜索一下,拷貝到D:\Microsoft Visual
Studio\VC98\Bin下就行了。

如果需要對jacob里的jar包改名,(雖然通常不會發生這種情況,但如果你需要兩個版本的jacob同時使用,改名可能是一種選擇),這時你的工作就多一些:

(1)package改名是必須的了,比如我們把src下的com.jacob.activeX改為com.test.jacob.activeX,把
com.jacob.com改為com.test.jacob.com,打包時只有這兩個包是有用的,所以只改它們就夠了。

(2)然後修改build.xml中src.java.jacob.mainpackage的value為com.test.jacob,修改java.class.main的value為com.test.jacob.com.Jacob。

(3)別忘了javaJarBin中打包的源碼路徑也要改,<include name="com/**/*.class" />改為<include name="com/test/**/*.class" />。

(4)build.xml中對生成的dll和jar包也要改個名,比如我們把這兩個文件改為jacob_test.dll和
jacob_test.jar。修改build.xml中的enerated.filename.dll和generated.filename.jar
的value為你新改的名字。

(5)com.test.jacob.com.LibraryLoader中,System.loadLibrary("jacob");改成
System.loadLibrary("jacob_test");
(6)另外,很重要的,在jni中*.cpp和*.h中com_jacob_com統一改為com_test_jacob_com,com/jacob
/com統一改為com/test/jacob/com。

(7)ant編譯,編譯好的文件在release目錄下。

(8)最後把編譯好的jacob_test.dll文件放在windows/system32下就大功告成了。

現在該用到jacob.jar了,如果你自己修改過jar包的名字,用新改的jar包,如jacob_test.jar,這里統一稱為jacob.jar。

首先在classpath中引入jacob.jar包,如果是web應用,WEB-INF的lib中也要加入jacob.jar包。

下面給一個例子:

類ReplaceWord.java

import com.jacob.com.*;

import com.jacob.activeX.*;

public class ReplaceWord {

public static void main(String[] args) {

ActiveXComponent app = new ActiveXComponent("Word.Application"); //啟動word

String inFile = "C:\\test.doc"; //要替換的word文件

try {

app.setProperty("Visible", new Variant(false)); //設置word不可見

Dispatch docs = app.getProperty("Documents").toDispatch();

Dispatch doc = Dispatch.invoke(docs,"Open",Dispatch.Method,new
Object[] { inFile, new Variant(false),new Variant(false) }, new
int[1]).toDispatch();
//打開word文件,注意這里第三個參數要設為false,這個參數表示是否以只讀方式打開,因為我們要保存原文件,所以以可寫方式打開。


Dispatch
selection=app.getProperty("Selection").toDispatch();//獲得對Selection組件
Dispatch.call(selection, "HomeKey", new Variant(6));//移到開頭

Dispatch find = Dispatch.call(selection, "Find").toDispatch();//獲得Find組件

Dispatch.put(find, "Text", "name"); //查找字元串"name"

Dispatch.call(find, "Execute"); //執行查詢

Dispatch.put(selection, "Text", "張三"); //替換為"張三"

Dispatch.call(doc, "Save"); //保存

Dispatch.call(doc, "Close", new Variant(false));

} catch (Exception e) {

e.printStackTrace();

} finally {

app.invoke("Quit", new Variant[] {});

app.safeRelease();

}

}

}

也許你會問,我怎麼知道要調用哪個方法傳哪些參數來進行操作?別忘了,word還有宏呢!自己錄制一個宏,編輯這個宏就可以看到代碼了!用哪個對象的哪個方法就看你的了。

我總結了一下:

document下的組件都用Dispatch selection=app.getProperty("Selection").toDispatch()這種方法獲得;

再往下的組件就需要調用selection的方法來獲取,如 Dispatch find = Dispatch.call(selection, "Find").toDispatch();

如果某個方法需要參數,Dispatch doc =
Dispatch.invoke(docs,"Open",Dispatch.Method,new Object[] { inFile, new
Variant(false),new Variant(false) }, new
int[1]).toDispatch()是一個例子,這是調用docs的Open方法,Object[]數組里就是它需要的參數了;

如果要修改某個組件的屬性呢,用Dispatch.put(find, "Text", "name")這種形式,"Text"是屬性名,"name"是值。

㈢ java word 轉xml 類似word另存為xml一樣的原理..有人在java程序里做過嗎.要java程序代碼轉的

兩種方式:
1、純Java,用POI來做
2、用JNA調用word介面,根據office api來做
第一種呢對於java開發來說相對簡單,但是需要學POI,而且估計有些格式控制不好。第二種要學習JNA,而且需要邊做變差word的office api。

㈣ java,用xml生成word文檔,打開生成的word時,顯示如下圖所示,是什麼原因呢

1.可能是低版本打開高版本。或者是格式不相同。
2.文檔損壞了。
解決辦法:
方法一:利用word2002/2003的「打開並修復」功能來修復文擋。
(1)啟動word2002/2003,單擊「文件-----打開」,在「打開」對話框中選重要修復的word文擋。
(2)單擊「打開」按鈕右邊的下三角按鈕,在彈出的下拉菜單中選中「打開並修復」選項,即可對損壞的文擋進行修復,修復完成後,顯示文擋內容。
方法二:轉換文擋格式來修復文擋。
(1)啟動word2000後單擊「工具------選項-------常規」。在該選項卡中選中「打開時確認轉換」復選框,並單擊「確定」按鈕。
(2)單擊「文件---打開」,在彈出的「打開」對話框中選中要恢復的文件,並在「文件類型」框中選中「從任意文件中恢復文本」。
(3)單擊「打開「按鈕自動對孫換文擋進行轉換修復。
(4)如果顯示的文擋內容混亂,單擊「文件---另存為」,將文擋保存為「RTF格式」或其他word所識別的格式。
(5)保存後關閉文擋,再次打開以「RTF格式」保存的文擋即可看到完整的文擋。
(6)再將文擋保存為「DOC格式」即可,這樣就完成了對孫換文擋的修復操作。
方法三:重設格式法
Word用文檔中的最後一個段落標記關聯各種格式設置信息,特別是節與樣式的格式設置。這樣我們就可以將最後一個段落標記之外的所有內容復制到新文檔,就有可能將損壞的內容留在原始文檔中。步驟如下:
①在Word中打開損壞的文檔,選擇「工具→選項」然後選擇「編輯」選項卡,取消「使用智能段落選擇范圍」復選框前的勾。取消選中該復選框,選定整個段落時,Word將不會自動選定段落標記,然後單擊「確定」按鈕。
②選定最後一個段落標記之外的所有內容,方法是:按「Ctrl+End」組合鍵,然後按「Ctrl+Shift+Home」組合鍵。
③在常用工具欄中,依次單擊「復制」、「新建」和「粘貼」按鈕。

㈤ java有什麼方法將word文件轉換為Word XML格式的文件 就是word另存為時,可以選擇另存為Word XML的格式

文本能復制出來的話,復制到word文本,你想每一行想獨立單元格的位置打英文下逗號,換行敲回車,(逗號神馬的可以換做空格或者其他允許的符號)然後選中這些文本,2010在插入,表格,文字轉換為表格,2003的忘了。。。點一下就完事兒了。

㈥ java 如何把一個word 轉為xml 文檔 不用 jacob

可以通過「FileOutputStream」創建文件實例,之後過「OutputStreamWriter」流的形式進行存儲,舉例:
OutputStreamWriter pw = null;//定義一個流
pw = new OutputStreamWriter(new FileOutputStream(「D:/test.xml」),"GBK");//確認流的輸出文件和編碼格式,此過程創建了「test.xml」實例
pw.write("我是要寫入到xml文件的內容");//將要寫入文件的內容,可以多次write
pw.close();//關閉流
備註:文件流用完之後必須及時通過close方法關閉,否則會一直處於打開狀態,直至程序停止,增加系統負擔。

㈦ 你好。java怎麼實現將word另存為xml。謝謝

你只要讀取了word,然後就是讀寫文件為xml就可以了

㈧ 怎麼把XML變成WORD文檔

1、找到需要轉換為word文檔的xml文檔。

㈨ java項目做的一個編輯器,xml文件導出word或者pdf的時候,出現一個bug,xml每個段落開始都有一個格縮進,

您好,我就來笑笑,要是誰做出來了,順便發一份給我,我給200財富值 : )

熱點內容
玩和平精英的時候伺服器發呆了怎麼辦 發布:2025-04-05 11:02:40 瀏覽:382
怎麼把蘋果的號轉到安卓手機上 發布:2025-04-05 10:39:05 瀏覽:533
存儲核心架構瓶頸已被攻破 發布:2025-04-05 10:38:27 瀏覽:308
空間新演算法 發布:2025-04-05 10:33:21 瀏覽:708
蜀門和遠征哪個配置低 發布:2025-04-05 10:23:50 瀏覽:288
linux下jdk的安裝 發布:2025-04-05 10:12:20 瀏覽:70
單機江湖腳本 發布:2025-04-05 10:08:32 瀏覽:767
愛奇藝離線緩存怎麼傳藍牙 發布:2025-04-05 10:00:48 瀏覽:143
阿里雲伺服器內存超頻 發布:2025-04-05 10:00:48 瀏覽:578
如何登錄pubg國際服安卓手機 發布:2025-04-05 09:40:07 瀏覽:414