簡體   English   中英

如何將.doc或.docx文件轉換為.txt文件

[英]How to convert .doc or .docx files to .txt

我想知道如何通過Java將Word .doc / .docx文件轉換為文本文件。 我知道有一個選項,我可以通過Word本身做到這一點,但我希望能夠做到這樣的事情:

java DocConvert somedocfile.doc converted.txt

謝謝。

如果您對處理Word文檔文件的Java庫感興趣,您可能需要查看例如Apache POI 來自網站的報價:

我為什么要使用Apache POI?

Apache POI api的主要用途是用於文本提取應用程序,例如Web蜘蛛,索引構建器和內容管理系統。


PS :另一方面,如果您只是在尋找轉換實用程序,Stack Overflow可能不是最合適的地方。


編輯:如果您不想使用現有的庫但是自己完成所有艱苦的工作,您會很高興聽到Microsoft已發布所需的文件格式規范。 Microsoft Open Specification Promise列出了可用的規范。只需谷歌搜索您感興趣的任何一個。在您的情況下,您需要例如OLE2復合文件格式,Word 97二進制文件格式和Open XML格式。)

使用命令行實用程序Apache Tika Tika支持多種格式(例如:doc,docx,pdf,html,rtf ......)

java -jar tika-app-1.3.jar -t somedocfile.doc > converted.txt

編程方式:

File inputFile = ...;
Tika tika = new Tika();
String extractedText = tika.parseToString(inputFile);

您也可以使用Apache POI 他們有一個從doc / docx 文本提取中提取文本的工具。 如果您只想提取文本,可以使用下面的代碼。 如果要提取富文本(例如格式和樣式),可以使用Apache Tika。

提取文檔:

InputStream fis = new FileInputStream(...);
POITextExtractor extractor;
// if docx
if (fileName.toLowerCase().endsWith(".docx")) {
    XWPFDocument doc = new XWPFDocument(fis);
    extractor = new XWPFWordExtractor(doc);
} else {
    // if doc
    POIFSFileSystem fileSystem = new POIFSFileSystem(fis);
    extractor = ExtractorFactory.createExtractor(fileSystem);
}
String extractedText = extractor.getText();

您應該考慮使用此庫。 它的Apache POI

摘自網站

簡而言之,您可以使用Java讀寫MS Excel文件。 此外,您還可以使用Java讀取和寫入MS Word和MS PowerPoint文件。 Apache POI是您的Java Excel解決方案(適用於Excel 97-2008)。 我們有一個完整的API用於移植其他OOXML和OLE2格式,並歡迎其他人參與。

Docmosis可以閱讀文檔並吐出文本。 需要安裝一些基礎架構(例如OpenOffice)。 您也可以使用JODConverter

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM