Java中IO流知识点总结

Isoke ·
更新时间:2024-11-14
· 753 次阅读

  一、流的分类   1、按功能分   读取流:InputStream Reader   写出流:OutPutStream Writer   2、按流的类型分类   字节流:InputStream OutputStream   字符流:Reader    Writer   二、流功能分析   读取流是从输入设备或数据对象中读取数据到程序,用程序进行处理读入的数据,写出流是把程序处理的数据输出到   输出设备上比如硬盘和控制台。   字节流读取和写入的数据单位是字节,可以读取和写入任何类型的数据。字符流读取跟写入的数据单位是字符,只能   读取和   写入文本类型的数据。当需要读取或写入文本型的数据时要用字符流,因为它会比字节流读写字符更方便和高效,相反当数   据不是文本型时只能用字节流来读取跟写入。   三、流中读写方法的示例。(当用到IO流时有可能出现IO异常,所以需要处理可能的异常)   字节流:   FileOutputStream fos = new FileOutputStream("D://xxx.xxx");   fos.write("dsfdsf".getBytes());//写入字节数组   fos.close();           //用完后需要关闭流,释放资源。字节流不需要Flush   FileInputStream fis = new FileInputStream("D://xxx.xxx");   fis.read();       //读取一个字节   fis.close();   字符流:   FileWriter fw = new FileWriter("D:\xxx.txt");   fw.write("sdfsdfsdf");//可以直接写入字符串   fw.flush();         //写完后需要Flush,才能真正写道输出设备   fw.close();         //close()时也会Flush。   FileReader fr = new FileReader("D:\xxx.txt");   fr.read(char[] ch);//可以读取一个字符数组的内容   fr.close();   四、转换流   当需要流之间的转换时会用到转换流。   1、把字节读取流转换成字符读取流   InputStreamReader isr = new InputStreamReader(new FileInputStream("xxx.xxx"));   2、把字符输出流转化成字节输出流   OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream("xx.xxx"));

  五、缓冲流   需要提高流的读写效率时会用到缓冲流   1、字节缓冲流   BufferedInputStream bis = new BufferedInputStream(new FileInputStream("xx"));   BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("xx"));   2、字符缓冲流   BufferedReader br = new BufferedReader(new FileReader("xx.txt"));   BufferedWriter bw = new BufferedWriter(new FileWriter("xx.txt"));   缓冲流对读写功能进行了增强,而且使用缓冲技术提高了读写效率,所以当需要提高程序的读写效率时要使用缓冲流。   六、File类的使用   1、创建   boolean createNewFile():在指定位置创建文件,如果该文件已经存在,则不创建,返回false。   和输出流不一样,输出流对象已建立创建文件。而且文件已经存在,会覆盖。   boolean mkdir()创建文件夹   boolean mkdirs() 创建多级文件夹   2、删除。   boolean delete();删除失败时返回false。如果文件正在被使用,则删除不了返回false。   void deleteOnExit();在程序退出时删除指定文件。   3、判断   boolean exists();文件是否存在。   isFile():是不是文件   isDirectory();是不是文件夹   isHidden();是不是隐藏文件   isAbsolute();是不是路径   4、获取信息   getName();文件名   getPath();文件路径   getParent();上一层路径   getAbsolutePath();路径



知识点总结 io io流 JAVA

需要 登录 后方可回复, 如果你还没有账号请 注册新账号