IO流概述及分类 IO流用来处理设备之间的数据传输 Java对数据的操作是通过流的方式 Java用于操作流的类都在IO包中 流按流向分为两种:输入流,输出流 FileWriter向文件中写数据A:FileWriter向文件中写数据操作步骤: a:使用FileWriter流关联文件 b:利用FileWriter的写方法写数据 c:利用FileWriter的刷新方法将数据从内存刷到硬盘上 d:利用FileWriter的关流方法将释放占用的系统底层资源 B:FileWriter方法: 构造方法 FileWriter(String fileName) 传入一个文件的路径 成员方法 void write(String str) 向文件中写str void flush() 将内存中的数据刷新到文件中 void close() 关流释放系统底层资源 需求:往文件中写数据 写数据--输出流--FileWriter FileWriter: FileWriter(String fileName):传递一个文件名称 输出流写数据的步骤: A:创建输出流对象 B:调用输出流对象的写数据的方法 C:释放资源 输出流写数据的步骤: A:创建输出流对象 B:调用输出流对象的写数据方法,并刷新缓冲区 C:释放资源 相对路径:相对当前项目而言的,在项目的根目录下(a.txt) 绝对路径:以盘符开始的路径(d:\\a.txt) close()和flush()方法的区别: flush():刷新缓冲区。流对象还可以继续使用。 close():先刷新缓冲区,然后通知系统释放资源。流对象不可以再被使用了。 文件读取 需求:从文件中读数据并显示到控制台 读数据--输入流--FileReader FileReader: FileReader(String fileName):传递文件名称 输入流读文件的步骤: A:创建输入流对象 B:调用输入流对象的读数据方法 C:释放资源 java.io.FileNotFoundException: fr.txt (系统找不到指定的文件。) 调用输入流对象的读数据方法 int read():一次读取一个字符 如果读取数据的返回值是-1的时候,就说明没有数据了,这也是我们循环的结束条件 FileReader fr = new FileReader("FileWriterDemo.java"); int ch; while((ch=fr.read())!=-1) { System.out.print((char)ch); } //释放资源 fr.close(); 特殊功能(重) 缓冲流的特殊功能: BufferedWriter void newLine():写一个换行符,这个换行符由系统决定 BufferedReader String readLine():一次读取一行数据,但是不读取换行符
|