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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© xiaomilu 中级黑马   /  2017-4-2 22:51  /  685 人查看  /  1 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

1:IO (Input 写 Output)
  如何使用程序来对文件进行读写: 创建文件,向文件写数据,从文件读取数据,关闭文件


2:FileWriter
构造方法:
          //1:如果文件不存在,会自动创建文件
          //2: 如果文件存在,则内容会被清空
          public FileWriter(String fileName) 传递一个文件名称
          public FileWriter(String fileName, boolean append); //追加写入


例子:  
        FileWriter fw = new FileWriter("D:\\a.txt");

成员方法:
        void write(String str) 往文件中写入一个字符串。
        void write(String str,int index,int len):写一个字符串中的一部分数据, index:开始索引,len:写几个
        void write(int ch):写一个字符数据,这里写int类型的好处是既可以写char类型的数据,也可以写char对应的int类型的值。'a',97
       
        void write(char[] chs):写一个字符数组数据
        void write(char[] chs,int index,int len):写一个字符数组的一部分数据, index:开始索引,len:写几个


        int read(char[] cbuf)

路径:
        相对路径:相对当前项目而言的,在项目的根目录下(a.txt)
        绝对路径:以盘符开始的路径(d:\\a.txt)

close()和flush()方法的区别:
        flush():刷新缓冲区。流对象还可以继续使用。
        close():先刷新缓冲区,然后通知系统释放资源。流对象不可以再被使用了。


3:FileReader
        public FileReader(String fileName) 传递要读取的文件名称
       
        例子:
        //1:读取数据必须要求文件存在
        FileReader fr = new FileReader("a.txt");

        成员方法:
        int read() 读取单个字符并返回  // 读取到文件末尾返回-1
        int read(char[] cbuf) 一次读取一个字符数组的数据,返回的是实际读取的字符个数



高效字符流:
a:高效写入流:BufferedWriter
b:高效读取流:BufferedReader
4:BufferedWriter  
为什么要学:BufferedWriter和BufferedReader
1:FileReader 和 FileWriter的操作效率低
2: BufferedWriter和BufferedReader效率高

构造方法:
        FileWriter fw = new FileWriter("a.txt");
        BufferedWriter bufw = new BufferedWriter(fw);
        //-----------------------------------------------
        BufferedWriter bufw = new BufferedWriter(new FileWriter("a.txt"));


5:BufferedReader

1 个回复

倒序浏览
已经收藏,貌似不完整,好像是复制过了的
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马