2012-03-31 19 views

回答

1
import java.io.*; 
import org.apache.poi.hwpf.HWPFDocument; 
import org.apache.poi.hwpf.extractor.WordExtractor; 

public class ReadDocFile { 
    public static void main(String[] args) { 
     File file = null; 
     WordExtractor extractor = null ; 
     try { 

      file = new File("c:\\New.doc"); 
      FileInputStream fis=new FileInputStream(file.getAbsolutePath()); 
      HWPFDocument document=new HWPFDocument(fis); 
      extractor = new WordExtractor(document); 
      String [] fileData = extractor.getParagraphText(); 
      for(int i=0;i<fileData.length;i++){ 
       if(fileData[i] != null) 
        System.out.println(fileData[i]); 
      } 
     } 
     catch(Exception exep){} 
    } 
} 
1

這包括在Swing tutorial中,更具體地在'使用文本窗格的示例'一節中。下面的代碼片段是從教程

String[] initString = 
     { /* ... fill array with initial text ... */ }; 

String[] initStyles = 
     { /* ... fill array with names of styles ... */ }; 

JTextPane textPane = new JTextPane(); 
StyledDocument doc = textPane.getStyledDocument(); 
addStylesToDocument(doc); 

//Load the text pane with styled text. 
try { 
    for (int i=0; i < initString.length; i++) { 
     doc.insertString(doc.getLength(), initString[i], 
         doc.getStyle(initStyles[i])); 
    } 
} catch (BadLocationException ble) { 
    System.err.println("Couldn't insert initial text into text pane."); 
} 

你正在尋找的方法是StyledDocument#insertString方法複製,上面

+0

好如圖所示,這讓我感到困惑的部分是initStyles []。這是否像大膽,斜體,顏色等?我不知道如何使用那部分。 – SpicyWeenie 2012-03-31 16:55:34

+0

鏈接的Swing教程包含[整個示例代碼](http://docs.oracle.com/javase/tutorial/displayCode.html?code=http://docs.oracle.com/javase/tutorial/uiswing/examples /components/TextSamplerDemoProject/src/components/TextSamplerDemo.java)。你看過嗎? – Robin 2012-03-31 16:57:09

+0

對不起,我看過了,但這並不是我想要做的。我試圖從我發佈的示例中打開使用MSWord編寫的文檔(這就是爲什麼我有apache POI),但在JTextPane中顯示文件的內容。 – SpicyWeenie 2012-03-31 17:48:29