當前位置:首頁 » 編程軟體 » word二進制流編譯html

word二進制流編譯html

發布時間: 2024-12-28 16:39:22

Ⅰ 如何從word文件的二進制流中提取文本

用BufferedReader很容易實現的.我寫了一個,僅供參考:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.Reader;

public class ReaderWordFile
{
public static void main(String[] args){
//我是假設我的word文件為F:盤下的test.doc.所以先創建這個文件.
File file = new File("F://test.doc");
FileInputStream fis=null;
Reader reader=null;
BufferedReader br=null;
try {
/*創建文件輸入流,這是一個位元組流.然後通過Reader的封裝,Reader指向的其實是InputStreamReader.InputStreamReader是位元組流通向字元流的橋梁,BufferedReader再封裝Reader,通過他的readLine()來讀取字元*/
fis = new FileInputStream(file);
reader = new InputStreamReader(fis);
br = new BufferedReader(reader);
String strLine;
StringBuffer sb = new StringBuffer();
/*sb用於存讀取的字元串,因為大量的append的,所以用StringBuffer,效率要大大的高於String的拼接*/
while((strLine = br.readLine())!=null){
sb.append(strLine+"\n");
}
/*這個while就是這段代碼的意義所在了,用readLine(),一行一行的讀出doc文件中的內容*/
System.out.println(sb.toString());
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
/*為了保證每個流都能關閉,最好是給每一個分別套上try catch.這個有一個關閉異常不會影響其他的關閉,我這樣寫顯然不安全,只是為了方便*/
fis.close();
reader.close();
br.close();
} catch (IOException e) {
e.printStackTrace();
}

}

}
}

當然這樣做,這個word文件必須得是純文本文件.所以這個方法更適合於讀取txt文件.

補充:
word文件已經在資料庫里了?你想從資料庫中讀取word文件?
如果word是以binary或image存在在資料庫中的.你也可以把這些數據封裝在一個輸入流裡面.你僅僅只是多做了ODBC-JDBC橋而已,當然不同的資料庫都對Java提供了JDBC包,且都是免費下載的到的,使用起來就更方便了.
我不明白word文件的來源到底是文件,還是數據源有什麼區別?
你掌握一種思想就行了.

熱點內容
手機優酷緩存視頻格式 發布:2025-05-15 04:13:45 瀏覽:209
公益電影分鏡頭腳本插畫 發布:2025-05-15 04:08:37 瀏覽:960
數據壓縮編碼 發布:2025-05-15 03:58:44 瀏覽:725
java字元為空 發布:2025-05-15 03:57:11 瀏覽:546
速訊安卓哪裡下載 發布:2025-05-15 03:55:02 瀏覽:48
緩存區數據讀寫原理 發布:2025-05-15 03:39:57 瀏覽:585
編譯器生成的是二進制文件嗎 發布:2025-05-15 03:38:42 瀏覽:955
運營為什麼區分ios和安卓 發布:2025-05-15 03:30:02 瀏覽:630
主播網站源碼 發布:2025-05-15 02:50:56 瀏覽:168
中文編程語言有哪些 發布:2025-05-15 02:48:59 瀏覽:536