A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

/*把一个字节文件(如一张图片)的数据存储到另一个字节文件中去,存储文件
    分析:源:InputStream ,Reader
            是否是文本文档
            不是,使用InputStream
            源设备:硬盘上的文件用 FileInputStream来操作,为了使用readLine()方法,把字节流文件转换为
            字符流文件,需要用到InputStreamReader转换流
            那么,是否需要提高效率,需要就用BufferedReader来包装

        目的地:OutputStream,Writer
        是否是纯文本文档呢,不是,使用OutputStream
        目的设备:硬盘上的文档 用FileOutputStream,由于需要把字符流转换为字节流,需要用到OutputStreamWriter
        那么,是否需要提高效率,需要,就用BufferedWriter来包装*/
import java.io.*;
class TransStreamTest {
    public static void main(String[] args) throws IOException{
        BufferedReader bufr=new BufferedReader(new InputStreamReader(new FileInputStream("Sunny1.jpg")));
        BufferedWriter bufw=new BufferedWriter(new OutputStreamWriter(new FileOutputStream("Sunny1_copy.jpg")));
        String line=null;
        while((line=bufr.readLine())!=null){
            bufw.write(line);
            bufw.newLine();
            bufw.flush();
        }
        bufw.close();
        bufr.close();
    }
}
但是得得结果是,照片复制出来了,没有预览,源文件是18.7KB,复制的文件是17.2KB,请问字节流文件转换为字符流,文件是否损失

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马