在Android中讀取doc檔案需要用第三方jar包tm-extractors-0.4.jar,讀取的過程很簡單
和普通的檔案流操作基本一樣,下面寫一個簡單的例子:
package com.word.read;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import org.textmining.text.extraction.WordExtractor;
import android.app.Activity;
import android.os.Bundle;
import android.os.Environment;
import android.widget.TextView;
public class WordReader extends Activity {
/** Called when the activity is first created. */
private TextView text;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
text = (TextView) findViewById(R.id.text);
String str = readWord(Environment.getExternalStorageDirectory().getAbsolutePath() + "/baojinggong.doc");
text.setText(str.trim().replace("/r", ""));
}
public String readWord(String file){
// 建立輸入資料流讀取doc檔案
FileInputStream in;
String text = null;
try {
in = new FileInputStream(new File(file));
WordExtractor extractor = null;
// 建立WordExtractor
extractor = new WordExtractor();
// 對doc檔案進行提取
text = extractor.extractText(in);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
return text;
}
}
代碼就這些,看起來也就是檔案流操作,只是多加了一個jar包而已,doc檔案放在模擬器sd卡的根目錄,運行後的效果如下:、
目前還在最佳化處理,這種方法只能讀取純文字檔案,如果檔案中有圖片的話就無法顯示了。