黑马程序员技术交流社区
标题: 字节流问题——拷贝word文件 [打印本页]
作者: ItJack 时间: 2014-9-12 16:42
标题: 字节流问题——拷贝word文件
拷贝word文件出现乱码,求解答。
这两天在学习io流的相关知识,学得差不多了。我自己也写了很多实例,但都没发现什么问题。今天我同学叫我帮他写一个工具,就是把一个word文件里面的数据读取到网页上并在网页上显示。听到这个问题的时候我就想是不是可以用流来解决这个问题,于是我就开始写代码。但通过写代码我发现,如果我操作的是对象是txt、jgp或者是视频文件的时候不会出现问题,但如果我操作word文档时就会出现这个问题。
拷贝txt代码:
- <P align=left> public static byte[] getWordBytes(File wordFile,File copyFile) {
-
- byte[] wordData = null;
- try {
- FileInputStream fis = new FileInputStream(wordFile);
-
- byte[] buf = new byte[1024];
- int line = 0;
- while((line = fis.read(buf)) != -1) {
- wordData = buf;
- }
-
- FileOutputStream fos = new FileOutputStream(copyFile);
- fos.write(wordData);
-
- fis.close();
- fos.close();
- } catch (FileNotFoundException e) {
- e.printStackTrace();
- } catch (IOException e1) {
- e1.printStackTrace();
- }
- return null;
- }
-
- public static void main(String[] args) {
- File file = new File("d:\\1.txt");
- File copyFile = new File("d:\\copy_1.txt");
- getWordBytes(file,copyFile);
- }
- }
- </P>
复制代码拷贝后结果:
但如果拷贝的是doc文件的话就会出现这样的情况:
这个地方我选择了各种编码都会出现这个问题,求解决啊。
作者: ItJack 时间: 2014-9-12 16:45
代码中的<p>标签怎么自动加上去了?
作者: 付江涛 时间: 2014-9-12 17:09
fos.write()放到while循环里面。需要读一个数组,写一个数组
作者: 暴走的小青春丶 时间: 2014-9-12 19:03
学习了,哈哈
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |