當前位置:首頁 » 編程軟體 » 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文件的來源到底是文件,還是數據源有什麼區別?
你掌握一種思想就行了.

熱點內容
手機存儲卡SD卡 發布:2024-12-29 07:16:26 瀏覽:219
kx驅動源碼 發布:2024-12-29 07:16:17 瀏覽:162
通達信完全加密公式 發布:2024-12-29 07:10:36 瀏覽:898
河南電子發票伺服器地址和埠 發布:2024-12-29 07:07:19 瀏覽:937
如何獲取ipf地址和dns伺服器 發布:2024-12-29 07:04:59 瀏覽:65
bugfree源碼 發布:2024-12-29 06:59:30 瀏覽:87
無法訪問8080埠 發布:2024-12-29 06:52:46 瀏覽:513
電影電視分鏡頭腳本 發布:2024-12-29 06:48:30 瀏覽:479
老式安卓機關機鍵壞了怎麼辦 發布:2024-12-29 06:47:51 瀏覽:148
壓縮預算後 發布:2024-12-29 06:42:04 瀏覽:739