2019独角兽企业重金招聘Python工程师标准>>>

一、按操作方式分类

1 - 字节流与字符流

字节流(InpuStream/OutpuStream):每次读取读出一个字节8位数据,可以读取任意类型;

字符流(Reader/Writer):每次读取一个字符16位数据,只能读取字符类型数据。

2 - 节点流和处理流

节点流:直接与数据源相连,读取或者写入

处理流:与节点流一起使用,在节点流上再套接一层不直接处理源数据,套接在节点流上的就是处理流

按架构方式分类传统IO的类架构图如下所示

二、按操作对象类型分类

节点流:直接与数据源相连,读取或者写入

处理流:与节点流一起使用,在节点流上再套接一层不直接处理源数据,套接在节点流上的就是处理流

三、其他相关类

1 - File

File类保存文件或目录的各种元数据信息,包括文件名、文件长度、最后修改时间、是否可读、获取当前文件的路径名,判断指定文件是否存在、获得当前目录中的文件列表,创建、删除文件和目录等方法。

2 - FileDescriptor

文件描述符

3 - RandomAccessFile

    该对象并不是流体系中的一员,其封装了字节流,同时还封装了一个缓冲区(字符数组),通过内部的指针来操作字符数组中的数据。该对象只能操作文件,所以构造函数接收两种类型的参数:1字符串文件路径;2File对象。该对象既可以对文件进行读操作,也能进行写操作,在进行对象实例化时可指定操作模式(r,rw)。
    注意:该对象在实例化时,如果要操作的文件不存在,会自动创建;如果文件存在,写数据未指定位置,会从头开始写,即覆盖原有的内容。 可以用于多线程下载或多个线程同时写数据到文件。

转载于:https://my.oschina.net/zhangyq1991/blog/1924202

Java 传统IO概要相关推荐

  1. JAVA网络IO编程

    2019独角兽企业重金招聘Python工程师标准>>> JAVA网络IO编程(BIO NIO AIO) 一.传统的BIO编程 1.网络编程的基本模型是C/S模型,即两个进程间的通信. ...

  2. Java之IO,BIO,NIO,AIO

    2019独角兽企业重金招聘Python工程师标准>>> 参考文献一 IO基础知识回顾 java的核心库java.io提供了全面的IO接口.包括:文件读写.标准设备输出等.Java中I ...

  3. java中io与nio复制文件性能对比

    2019独角兽企业重金招聘Python工程师标准>>> 1.  在JAVA传统的IO系统中,读取磁盘文件数据的过程如下: 以FileInputStream类为例,该类有一个read( ...

  4. java 中io的删除文件_总结删除文件或文件夹的7种方法-JAVA IO基础总结第4篇

    本文是Java IO总结系列篇的第4篇,前篇的访问地址如下: 如果您阅读完成,觉得此文对您有帮助,请给我点个赞,您的支持是我不竭的创作动力. 为了方便大家理解,我特意制作了本文对应的视频:总结删除文件 ...

  5. java基础 io流 字节流 字符流 节点流 包装流 转换流 缓冲流 对象流 打印流 Properties类

    目录 1.概念 2.常用的文件操作 2.1 创建文件 2.2 获取文件相关信息 2.3 目录的操作和文件删除 3. IO流原理及流的分类 3.1 流的分类 4.InputStream 字节输入流 4. ...

  6. Java的IO流 ,BIO NIO AIO 的区别?

    目录 1.在了解不同的IO之前先了解:同步与异步,阻塞与非阻塞的区别: 2.BIO NIO AIO 分别代表什么?(面试简答): 3.BIO和NIO.AIO的区别: 4.java中io流的分类: •  ...

  7. JAVA的IO/NIO?

    最传统的一种IO模式,即在读写的过程中发生阻塞,当用户发起IO请求后,内核会去查看数据是否就绪,如果没有就绪会等待线程就绪,而用户的请求线程就会进入阻塞状态,用户线程交出cpu控制权,当数据准备就绪, ...

  8. Java之IO,BIO,NIO,AIO知多少?

    开心一笑 [一女人:"我真不放心丈夫,他准备到湖中心水最深的地方把猫扔掉."邻居:"那有什么不放心的?"女人:"猫已回家一钟头了!"] 提出 ...

  9. Netty入门--传统IO与NIO详解

    文章目录 IO模型 传统阻塞的IO模型--BIO Client端案例 Server端案例 NIO(Java non-blocking IO)非阻塞IO NIO的三大组件 Channel Selecto ...

  10. 用java的io做一个代码计数器_Java中的程序计数器是什么

    Java中的程序计数器是什么 程序计数器是当前线程正在执行的字节码的地址.程序计数器是线程隔离的,每一个线程在工作的时候都有一个独立的计数器. JAVA虚拟机管理的内存区域图 1.什么是程序计数器? ...

最新文章

  1. 人工智能帮助预测混合用药的副作用
  2. Java成神之路[转]
  3. SPOJ 4487 Can you answer these queries VI
  4. 车是银色好还是白色好?
  5. 【ENVI入门系列】13.分类后处理
  6. 打算开源一个低代码平台,第二天,包含【工作流,业务流,财务,APQC】。技术站 React,typescript,java,mysql
  7. PPT视频无法播放,编解码器不可用
  8. easyUi combobox setValue 引起的关于js的坑
  9. Maven第9篇:多环境构建
  10. exchange服务器重装后,exchange服务器之exchange 2016卸载及重装的经历
  11. YY频道美化,模板修改工具【免费】可以闪动
  12. Map_Excise1
  13. 解除文件占用,解决文件被占用不能删除
  14. 装系统后恢复U盘容量
  15. 让开源按键组件MultiButton支持菜单操作(事件驱动型)
  16. 利用绝对值函数以及三目运算符简便打印菱形字母塔
  17. Linux 防火墙与NAT服务
  18. java 使用zxing生成条形码(可自定义文字位置、边框样式)
  19. 如何用java快速去掉字符串前后的双引号
  20. 自动驾驶/智能网联矿山运输示范应用现状

热门文章

  1. Atitit 加强学生就业的规划与艾提拉的治学理念 目录 1. 思路的转换 1 1.1. 发展内需为主模型 vs 外贸模式 1 1.2. 批发模式vs 零售模式vs 1 1.3. 天堂模式vs地狱模
  2. Atitit 数据库与存储引擎设计与实现 attilax总结 1.1. 数据库的实现有很多种, 遵循一些理论规范,如 Fix Rules、Write-Ahead Log、Force-log-at-
  3. Atitti cto的日常流程与职责attilax总结
  4. atitit.spring3 mvc url配置最佳实践
  5. paip.c++ qt 网页爬虫 的 网络编程 总结
  6. paip.提升用户体验与安全性---注册流程总结
  7. paip.PHP实现跨平台跨语言加解密方法
  8. 基金侧袋机制: 指引与操作规范
  9. 和10位CIO,聊了聊他们今年的OKR
  10. 新兴IT企业特斯拉(四)——Model 3