码迷,mamicode.com
首页 > 编程语言 > 详细

Java——IO类,字符流读数据

时间:2018-06-14 14:27:48      阅读:175      评论:0      收藏:0      [点我收藏+]

标签:bre   S3   rtk   empty   tab   XA   throw   xid   CQ   

InputStreamReader读数据

█ InputStreamReader读数据方法

     ?public int read();              //读取单个字符。
     ?public int read(char[] cbuf);             //将字符读入数组。
     ?public int read(char[] cbuf,int off ,int len);            //将字符读入数组中的某一部分。

public static void main(String[] args) throws IOException {

                FileInputStream fis = new FileInputStream("1.txt");
                InputStreamReader isr = new InputStreamReader(fis);   //没有写明编码格式,默认系统编码(utf-8);

                //方法一:
        /*      int ch;
                // while ((ch = (char) isr.read()) != -1) { //这里不能在这里强行转换成 char ,转换成 char 就永远不会等于 -1
                while ((ch = isr.read()) != -1) {
                        System.out.print((char) ch);
                } */

                //方法二:
        /*     char[] charray = new char[10];
                int leng = isr.read(charray);
                System.out.println(charray);*/
//方法三:
        /*     char[] charray2 = new char[10];
                int leng2 = isr.read(charray2, 0,charray2.length);
                System.out.println(charray2);*/

                char[] charray2 = new char[10];
                int leng;
                while(  ( leng = isr.read(charray2,0,charray2.length )  ) != -1 ){
                        //System.out.print(charray2);      //这里不能直接输出数组,因为不能最后一才读进数组长度个数据,会导致输出的部分是上次读到数组里的
                        String charray2Str = new String(charray2,0,leng);
                        System.out.print(charray2Str);
                }

                fis.close();
                isr.close();
        }
}
技术分享图片































Java——IO类,字符流读数据

标签:bre   S3   rtk   empty   tab   XA   throw   xid   CQ   

原文地址:https://www.cnblogs.com/meihao1203/p/9181971.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!