请高手看看,这个程序有什么问题,为什么拷贝后的文件比原文件小阿

robustkele 2007-07-31 11:01:17
import java.io.*;

public class FileCopy {
public static void main(String[] args) {
int temp = 0;

try {
BufferedReader br = new BufferedReader(new FileReader("d:\\111042010449.wmv"));
BufferedWriter bw = new BufferedWriter(new FileWriter("d:\\aaa.wmv"));
while((temp=br.read()) !=-1) {
bw.write(temp);
}
br.close();
bw.flush();
bw.close();
}catch (IOException e) {
e.printStackTrace();
System.out.println("文件读取错误!!!");
}
System.out.println("文件拷贝成功!!!");
}
}

谢谢了!!!
...全文
230 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
dreamover 2007-07-31
  • 打赏
  • 举报
回复
二进制文件都用stream
dreamover 2007-07-31
  • 打赏
  • 举报
回复
流文件别用Reader、Writer,用InputStream和OutputStream
robustkele 2007-07-31
  • 打赏
  • 举报
回复
怎么没人回答阿
比特灵 2007-07-31
  • 打赏
  • 举报
回复
据说是字体的原因。。。删除系统自带字体之外的其它字体试下。
robustkele 2007-07-31
  • 打赏
  • 举报
回复
import java.io.*;

public class FileCopy {
public static void main(String[] args) {
int temp = 0;

try {

BufferedInputStream bis = new BufferedInputStream(new FileInputStream("d:\\111042010449.wmv"));
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("d:\\1110.wmv"));
while((temp=bis.read()) !=-1) {
bos.write(temp);
}
bis.close();
bos.flush();
bos.close();
}catch (IOException e) {
e.printStackTrace();
System.out.println("文件读取错误!!!");
}
System.out.println("文件拷贝成功!!!");
}
}
robustkele 2007-07-31
  • 打赏
  • 举报
回复
我自己解决了

import java.io.*;

public class FileCopy {
public static void main(String[] args) {
int temp = 0;

try {

BufferedInputStream bis = new BufferedInputStream(new FileInputStream("d:\\111042010449.wmv"));
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("d:\\1110.wmv"));
//BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("d:\\111042010449.wmv")));
//BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("d:\\afa1af.wmv")));
while((temp=bis.read()) !=-1) {
bos.write(temp);
}
bis.close();
bos.flush();
bos.close();
}catch (IOException e) {
e.printStackTrace();
System.out.println("文件读取错误!!!");
}
System.out.println("文件拷贝成功!!!");
}
}
jingtao8177 2007-07-31
  • 打赏
  • 举报
回复
up
robustkele 2007-07-31
  • 打赏
  • 举报
回复
好像没有ByteInputStream和ByteOutputStream

我的jdk是1.6.0.2的
galois_godel 2007-07-31
  • 打赏
  • 举报
回复
用ByteInputStream和ByteOutputStream
robustkele 2007-07-31
  • 打赏
  • 举报
回复
试了啊,还是不行啊

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧