用字符流复制文件会导致文件数据缩小问题


jvm中默认的解码的码表是gbk,gbk中中文是两个字节,英文是一个字节,如果是未知字符则最终会匹配一个一个字节的字符,也就是码表中找不到对应字符的就会转为一个字节,每一个文件都有特定的解码方式,所以,当传入了两个字节的字符,字符找不到对应的gbk码表字符时,就会转为一个字节的未知字符,所以就缩小了。

所以  非纯文本不要用字符流。

原文地址:https://www.cnblogs.com/joequa/p/5743667.html