首页 > 其他 > 详细

IO流

时间:2019-01-12 13:57:48      阅读:153      评论:0      收藏:0      [点我收藏+]

1.IO流的概述:用来处理设备间的数据传输(文件复制,文件下载,文件上传)

 

2.输入流和输出流图解:(读数据使用的是输入流,写数据使用的是输出流)

技术分享图片

2.1:如何解决输出流中的换行问题:

window系统:\r\n

linux:\n

mac:\n

2.2:如何解决输出流中的追加输入数据问题:

使用FileWriter fw=new FileWriter("b.txt",ture);//表示追加写入,默认为false

3.使用输入流读取文件数据,每次读取一个,并输出在控制台:
        /*
         * 需求:从文件中读数据,依次读取一个并输出的控制台
         */
        //创建输入流对象
        FileReader fr=new FileReader("c.txt");
        int ch = fr.read();
        System.out.println((char)ch);
   

 

3.使用输出流读取一个文件的内容,用输出流将它写到另一个文件,实现复制:
        //创建输入流对象
        FileReader fr=new FileReader("a.txt");
        //创建输出流对象
        FileWriter fw=new FileWriter("b.txt");
        //使用循环来写入数据
        int ch;

         \\1.fr.read()

         \\2.ch=fr.read()

        \\3.ch!=-1
        while((ch=fr.read())!=-1) {
            fw.write(ch);
        }
       //释放资源
        fw.close();
        fr.close();

4.字符缓冲流:
    /* BufferedReader:将文本写入字符输出流,缓冲各个字符,从而提高单个字符,数组和字符串的高效写入
     * BufferedWriter:从字符输出流中读取文件,缓冲各个字符从而实现字符,数组和字符串的高效读取
     */
    public static void main(String[] args) throws IOException {
        //创建字符缓冲输入流对象
        BufferedReader br=new BufferedReader(new FileReader("a.txt"));
        //创建字符缓冲输出流对象
        BufferedWriter bw=new BufferedWriter(new FileWriter("bw.txt"));
        char[] chs=new char[1024];
        //利用循环来实现文件的复制
        int len;
        while((len=br.read(chs))!=-1) {
            bw.write(chs, 0, len);
        }
        br.close();
        bw.close();
    }

字符缓冲流的特殊功能:

BufferedWriter:

1.void newLine():写一个换行符,这个换行符由系统来决定

BufferedReader:

2.String readLine():一次读取一行数据,但是不读取换行符





   

IO流

原文:https://www.cnblogs.com/yan09620/p/10249587.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!