最近碰到一个问题,客户端发布图片,第一次成功,第二次找不到图片文件。此问题产生的原因,是第一次上传图片时,将源文件的名字修改了,第二次上传图片时,由于图片名已改(虽然在系统相册里仍能找到图片,但系统相册中文件对应的路径名没有更新),导致找不到图片,上传失败。
java中快速复制文件的代码示例
public void fileChannelCopy(File old, File newfile) {
FileInputStream fi = null;
FileOutputStream fo = null;
FileChannel in = null;
FileChannel out = null;
try {
fi = new FileInputStream(old);
fo = new FileOutputStream(newfile);
in = fi.getChannel();//得到对应的文件通道
out = fo.getChannel();//得到对应的文件通道
in.transferTo(0, in.size(), out);//连接两个通道,并且从in通道读取,然后写入out通道
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
fi.close();
in.close();
fo.close();
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}