所以我尝试将文件通过这种方式复制到新的位置:的Java文件复制扭曲文件
FileReader in = new FileReader(strTempPath);
FileWriter out = new FileWriter(destTempPath);
int c;
while ((c = in.read()) != -1){
out.write(c);
}
in.close();
out.close();
其中一期工程的时间细99%。有时候,如果图像比较小,< = 60x80px,复制的图像会全部失真。有人知道这里可能会发生什么吗?这里是复制功能的错误,还是我应该在别处寻找?
谢谢。
它很大程度上取决于您的平台的字符编码。在大多数编码中,复制二进制数据将从几个字节值中摧毁到很多字节组合。如果使用-Dfile.encoding = ISO-8859-1运行程序时,程序突然“有效”,则可以确定在某个地方尝试使用读写器来复制二进制数据。 ISO-8859-1是少数不破坏二进制数据的字符集之一,但取决于您的语言环境文本在显示时将全部是乱码。 – mihi 2011-06-08 18:38:24