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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© jiangkaizhuo 中级黑马   /  2016-4-15 23:17  /  313 人查看  /  2 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

IO流
        1:字节流
                字节输入流
                字节输出流
        2:字符流
                字符输入流(☆☆☆☆)
                        Reader方法:
                                public int read():读取单个字符,并返回成int,如果已到达流的末尾,则返回 -1
                                public int read(char[] cbuf):将字符读入数组,返回读取的字符数,如果已到达流的末尾,则返回 -1
                       
                        public static void main(String[] args) throws IOException {
                                FileReader fr = new FileReader("xxx.txt");        //创建字符输入流对象
                                int c;
                               
                                while((c = fr.read()) != -1) {                //通过项目默认的码表一次读取一个字符
                                        System.out.print((char)c);        //将c强制类型转换成 char
                                }
                                fr.close();
                        }
                字符输出流(☆☆☆☆)
                        Writer的方法:
                                public void write(int c):写入单个字符。要写入的字符包含在给定整数值的 16 个低位中,16 高位被忽略。c - 指定要写入字符的 int类型。
                                public void write(char[] cbuf):写入字符数组。
                                public abstract void write(char[] cbuf,int off, int len):写入字符数组的某一部分。cbuf - 字符数组,off - 开始写入字符处的偏移量,len - 要写入的字符数
                                public void write(String str):写入字符串。(字符流特有的方法,字节流里面没有)
                                public void write(String str,int off, int len):写入字符串的某一部分。str - 字符串,off - 相对初始写入字符的偏移量,len - 要写入的字符数 (字符流特有的方法,字节流里面没有)

                        public static void main(String[] args) throws IOException {
                                FileWriter fw = new FileWriter("yyy.txt");
                                fw.write("大家好,基础班快接近尾声了,大家要努力,要坚持!!!");
                                fw.write(97);
                                fw.close();
                        }
                字符流拷贝文件 一次一个字符(☆☆☆☆☆)
                        public static void demo1() throws FileNotFoundException, IOException {
                                FileReader fr = new FileReader("xxx.txt");
                                FileWriter fw = new FileWriter("zzz.txt");
                               
                                int c;
                                while((c = fr.read()) != -1) {
                                        fw.write(c);
                                }
                               
                                fr.close();
                                fw.close();        //Writer类中有一个char[] chs = new char[1024]的小缓冲区,如果不关流,就会将内容写到缓冲区里,关流会将缓冲区内容刷新,再关闭
                        }

2 个回复

倒序浏览
上基础班之前加班加点自学过IO,看了你的帖子之后也是一次很好的复习,谢谢
回复 使用道具 举报
感谢分享!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马