2017-04-24 63 views
0

我想用poi創建word或excel文件的副本。 我知道poi也用於閱讀單詞或excel文件。閱讀不僅意味着價值觀,還意味着每種細胞的字體大小,表格顏色和背景顏色等屬性。讀取xlsx或docx文檔的值和屬性時,我想按照原樣複製單詞或Excel文檔。有沒有可能在任何網站上的開放源代碼中打開相關源代碼?我想用poi創建word或excel文件的副本

+2

如果您想*複製*文件內容;你爲什麼不在文件系統視圖中複製文件? – GhostCat

+2

如果只是複製,您可以使用此API:https://docs.oracle.com/javase/tutorial/essential/io/copy.html – hubpixel

回答

3

閱讀Apache POI or docx4j for dealing with docx documents

你可以找到相關的文字添加到文件的技術,你可以發現在https://www.slideshare.net/plutext/document-generation-2012osdcsydney

使用POI的HWPF支持。這通常被包含在docx4j中作爲依賴項。然而它並不是一個很好的方法,因爲它不會將doc轉換爲docx4j的內部表示: - 您有困於HWPF land 使用JODConverter將doc轉換爲docx,必要時再轉回docx4j。這通常是最簡單的。

0

從一個文件打開一個excel,並將其保存到另一個文件我使用此代碼。

//open source excel 
InputStream template = new FileInputStream("C:\\source excel path\\input.xlsx"); 
Workbook wb = WorkbookFactory.create(template); 

//Saving excel to a different location or filename. 
FileOutputStream out = new FileOutputStream("C:\\path to copy excel to\\output.xlsx"); 
wb.write(out); 
wb.close(); 
out.close(); 
template.close(); 
+0

如果您不更改文件,爲什麼還要打開POI以打開文件再寫一遍?爲什麼不直接[直接複製](https://docs.oracle.com/javase/tutorial/essential/io/copy.html)? – Gagravarr

+0

問題如何使用POI進行復制。我個人在填寫數據之前將其用作模板。如果您使用了很多格式,在Excel中製作模板可以節省時間編碼。另外,如果你想用宏輸出一個excel,這是做到這一點的唯一方法。 – Matt

相關問題