当前位置:首页 » 编程软件 » 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文件的来源到底是文件,还是数据源有什么区别?
你掌握一种思想就行了.

热点内容
c指针编程 发布:2024-12-29 06:34:35 浏览:387
linux服务器加ip命令 发布:2024-12-29 06:34:33 浏览:798
c语言中的case 发布:2024-12-29 06:23:32 浏览:397
我的世界服务器申请专属ip 发布:2024-12-29 06:21:14 浏览:920
扫雷c语言代码 发布:2024-12-29 06:10:51 浏览:139
python判断对象属性 发布:2024-12-29 06:10:09 浏览:413
备份隐形云加密云盘 发布:2024-12-29 06:10:06 浏览:898
精神病院药房需要配置些什么药 发布:2024-12-29 05:48:12 浏览:365
和平精英安卓戴耳机枪声大怎么办 发布:2024-12-29 05:46:01 浏览:500
javachar数组 发布:2024-12-29 05:43:46 浏览:615