0

我想知道是否有人可以帮助我弄清楚为什么当我阅读 .doc 文件时我的文本没有对齐。到目前为止,在我的代码中,我使用的是 WordExtractor,但我遇到了格式问题,内容排列不正确。这是我使用 Java 1.7 编写的代码。

public class Doc {
 File docFile = null;
 WordExtractor docExtractor = null ;
 WordExtractor exprExtractor = null ;
 public void read(){
  docFile = new File("blue.doc");
   try{
     FileInputStream fis = new FileInputStream(docFile.getAbsolutePath());
     HWPFDocument doc=new HWPFDocument(fis);
     docExtractor = new WordExtractor(doc);
     }catch(Exception e){
     System.out.println(e.getMessage());
  }


 System.out.println(docExtractor.getText());



  }
 }

程序如何显示文档。

 A                                                                      E
I'm stuck in Folsom Prison, and time keeps draggin on.  

它应该像这样显示

     A                                              E
 I'm stuck in Folsom Prison, and time keeps draggin on.  
4

1 回答 1

0

当然,这是行不通的。您正在将文档文件的内容提取到字符串变量中(这会将格式扭曲为段落等文档)。此外,您将文本打印到控制台,然后您希望它看起来与 Microsoft Word 中的完全一样?

接下来,你应该想想你想做什么。假设您要验证文档的格式和内容,我的回答如下。使用将文档转换为纯文本getText()将为您提供扭曲格式的文档内容,这对您没有帮助。通过使用 POI 库,您应该尝试访问文档中的每个段落和表格并验证/读取/写入您想要的任何内容。

doc.getRange()会给你一个 Range 对象。通过参考http://poi.apache.org/apidocs/org/apache/poi/hwpf/usermodel/Range.html来玩这个对象,您将能够访问文档中的所有段落、表格和部分。那应该可以帮助您通过程序编写word文档。

于 2012-09-01T20:58:44.797 回答