看你的while循环:- while((temp=input.read())!=-1){ // 开始拷贝
- out.write(temp) ; // 边读边写
- }
复制代码 你把字节流的数据,写到了字符流中了,读一个字节写一个字符,貌似文件变大了
当然内容一定是错误的了
再者我们看writer类的write方法:- public void write(int c) throws IOException {
- synchronized (lock) {
- if (writeBuffer == null){
- writeBuffer = new char[writeBufferSize];
- }
- writeBuffer[0] = (char) c;
- write(writeBuffer, 0, 1);
- }
- }
复制代码 这里写的是字符而不是字节 |