weboffice能打开二进制流形式的word吗

 我来答
MDJ东哥
推荐于2016-01-25 · 知道合伙人宠物行家
MDJ东哥
知道合伙人宠物行家
采纳数:7924 获赞数:20688
毕业于湖南科技工业职业技术学院,电子信息系计算机网络专业,大专学历。

向TA提问 私信TA
展开全部
用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文件的来源到底是文件,还是数据源有什么区别?
你掌握一种思想就行了.
博思aippt
2024-07-20 广告
作为深圳市博思云创科技有限公司的工作人员,对于Word文档生成PPT的操作,我们有以下建议:1. 使用另存为功能:在Word中编辑完文档后,点击文件->另存为,选择PowerPoint演示文稿(*.pptx)格式,即可将文档内容转换为PPT... 点击进入详情页
本回答由博思aippt提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式