提取Word文档中的文本是一种常见的操作,便于单独获取Word文档中的内容以进行进一步的处理、分析等操作。我们可以直接复制并粘贴保存到指定文件中。但这一方法一般适用于文本内容较少时。除了费时费力地手动保存以外,我们也可以通过代码来一次性批量提取Word文档中的大量内容。在这里我将介绍如何通过 Java程序来实现这个功能。具体操作和代码请参考下文。
所需工具:
这是一个完全独立的java库,支持对Word文件进行各种操作,如创建,编辑,转换等。因为是免费版,所以使用时有一定的页面限制。
或者也可以下载使用商业版:
Spire.Doc for Java
。
点击此链接
获取30天临时授权
。
导入jar包:
-
从此链接下载并解压
Free Spire.Doc for Java
。
-
然后在IDEA中创建一个新项目。
-
依次点击“文件”(File),“项目结构”(Project Structure),“组件”(Modules),“依赖项”(Dependencies)。
-
再点击右方绿色“+”下的第一个选项“jar文件或路径”(JARs or Directories)。
-
找到解压后的Spire.Doc.jar ,将其导入到项目中。
具体步骤和代码:
• 创建一个
Document
对象来加载Word文档。
• 使用
getText()
方法获取文档中的文本。
• 调用
writeStringToTxt
方法将文本写入名为ExtractedText.txt的txt文件中。
import com.spire.doc.Document;
import java.io.FileWriter;
import java.io.IOException;
public class ExtractText {
public static void main(String[] args) throws IOException {
//加载Word文档
Document document = new Document();
document.loadFromFile("sample.docx");
//获取文档中的文本保存为String
String text=document.getText();
//将String写入Txt文件
writeStringToTxt(text,"ExtractedText.txt");
}
public static void writeStringToTxt(String content, String txtFileName) throws IOException {
FileWriter fWriter= new FileWriter(txtFileName,true);
try {
fWriter.write(content);
}catch(IOException ex){
ex.printStackTrace();
}finally{
try{
fWriter.flush();
fWriter.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
}
效果图: