JavaIO流读写问题,高手救命啊!!!!

来源:百度知道 编辑:UC知道 时间:2024/06/07 11:15:20
JAVA新手,想写个程序实现文件传输,但是在测试IO流的时候就出现了问题。在读写JPG之类的文件时没问题,但是在读写TXT,DOC之类的文档时就会出现异常,异常情况为新写出来的TXT比原来的TXT要大,好像是因为有很多空字符填充了空间。贴上源码:

import java.io.*;

public class Inttt {

public static void main(String[] args) {
String name1="F:\\我的文档\\123.jpg";
String name2="F:\\我的文档\\555.jpg";
try {
BufferedInputStream in = new BufferedInputStream(
new FileInputStream(name1));
BufferedOutputStream out = new BufferedOutputStream(
new FileOutputStream(name2));
int buffer = 8192;
byte[] bt = new byte[buffer];
int read;
if (in != null) {
while (true) {
if ((read = in.read(bt,0,bt.length)) != -1) {
out.write(bt,0,read);
}else{
break;
}
}
}
in.close();
} catch (Exception e) {

}

}

}

求一能够传输任何文件的程序(不要出现异常的),也

汗,我测了好一会儿才发现问题在哪
问题其实很简单
你的BufferedOutputStream没有close
关闭之后就没有问题了,
而且lz你说的问题应该是,新写出来的要比原文件小,应为out没有关闭,最后一部分文件没有及时写入。

很专业啊