當前位置:首頁 » 編程軟體 » 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-03-11 02:41:20 瀏覽:441
編程要很久 發布:2025-03-11 02:41:10 瀏覽:194
筆記本電腦播放mp4時提醒伺服器運行失敗 發布:2025-03-11 02:40:32 瀏覽:439
吉利星瑞尊貴版配置有哪些 發布:2025-03-11 02:34:33 瀏覽:888
ecs中怎麼配置slb 發布:2025-03-11 02:33:17 瀏覽:718
vb圖片保存到資料庫 發布:2025-03-11 02:31:05 瀏覽:841
元件符號編譯器 發布:2025-03-11 02:30:12 瀏覽:72
位交換演算法 發布:2025-03-11 01:57:41 瀏覽:342
網游跟上傳 發布:2025-03-11 01:46:07 瀏覽:62
ro手游腳本模擬器 發布:2025-03-11 01:43:04 瀏覽:890