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

熱點內容
sql2008錯誤233 發布:2025-07-03 02:28:52 瀏覽:167
創建資料庫語句mysql 發布:2025-07-03 02:14:34 瀏覽:145
python量化投資 發布:2025-07-03 02:05:11 瀏覽:804
proxy代理伺服器地址 發布:2025-07-03 01:56:52 瀏覽:909
ps選區存儲 發布:2025-07-03 01:55:21 瀏覽:841
sql2008連接數 發布:2025-07-03 01:55:20 瀏覽:245
androidstring 發布:2025-07-03 01:53:55 瀏覽:182
密碼sql注入 發布:2025-07-03 00:44:07 瀏覽:555
oa伺服器需要什麼硬體 發布:2025-07-03 00:36:05 瀏覽:512
4mol的naoh怎麼配置 發布:2025-07-03 00:19:10 瀏覽:856