流的概述:

在java中,将不同的输入输出源通过流的形式进行相关操作(输入,输出),流是一种抽象描述,在程序中表示数据的一种转移方式

Jdk提供了各种不同的流用于处理不同的输入输出源,根据流性质划分分为以下类型:

  • 按流向分(站在程序角度考虑

    • 输入流(input)
    • 输出流(output)
  • 按类型分:

    • 字节流(InputStream/OutputStream)

      • 任何文件都可以通过字节流进行传输。
    • 字符流(Reader/Writer)
      • 非纯文本文件,不能用字符流,会导致文件格式破坏,不能正常执行。
    • 节点流(低级流:直接跟输入输出源对接)
      • FileInputStream/FileOutputStream/FileReader/FileWriter/PrintStream/PrintWriter.
    • 处理流(高级流:建立在低级流的基础上)
      • 转换流:InputStreamReader/OutputStreamWriter,字节流转字符流/字符流转字节流
      • 缓冲流:BufferedInputStream/BufferedOutputStream   
        • BufferedReader/BufferedReader可对节点流经行包装,使读写更快

IO的几种分类(详细)相关推荐

  1. mysql io模型_5种网络IO模型

    同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别?这个问题其实不同的人给出 ...

  2. 2. 彤哥说netty系列之IO的五种模型

    你好,我是彤哥,本篇是netty系列的第二篇. 欢迎来我的公从号彤哥读源码系统地学习源码&架构的知识. 简介 本文将介绍linux中的五种IO模型,同时也会介绍阻塞/非阻塞与同步/异步的区别. ...

  3. 应用服务器cpu类型,服务器基础知识+CPU分类详细+电源标准讲解

    <服务器基础知识+CPU分类详细+电源标准讲解>由会员分享,可在线阅读,更多相关<服务器基础知识+CPU分类详细+电源标准讲解(17页珍藏版)>请在人人文库网上搜索. 1.服务 ...

  4. 如下10种分类算法对比Classifier comparison

    如下10种分类算法对比 names = ["Nearest Neighbors", "Linear SVM", "RBF SVM", &qu ...

  5. 独家 | 机器学习中的四种分类任务(附代码)

    作者:Jason Brownlee 翻译:陈丹 校对:杨毅远 全文约4400字,建议阅读18分钟 本文为大家介绍了机器学习中常见的四种分类任务.分别是二分类.多类别分类.多标签分类.不平衡分类,并提供 ...

  6. ML之FE:数据处理—特征工程之特征选择常用方法之基于搜索策略的三种分类、基于评价准则划分的三种分类(Filter/Wrapper/Embedded)及其代码实现

    ML之FE:数据处理-特征工程之特征选择常用方法之基于搜索策略的三种分类.基于评价准则划分的三种分类(Filter/Wrapper/Embedded)及其代码实现 目录 Wrapper包裹式/封装式- ...

  7. 下位机和上位机是什么意思_焊锡机是什么?焊锡机有几种分类?

    焊锡机具有一个大的透明窗口,可让您观察整个焊锡过程,并且在产品开发和过程曲线优化中起着非常重要的作用.温度控制采用了精确直观的智能控制器,完全可编程的曲线控制,精确的温度控制,简单的参数设置和简便的操 ...

  8. 市面上有哪几种门_目前市面上木门的几种分类

    近日,小编收集整理了国内市面上木门的几种分类,与大家一同分享. 木门按用途分 如户门.卧室门.书房门.厨房门.浴卫门等,根据用途不同,规格.式样.性能有不同的要求.户门是出入之首,由于有大件物品出入, ...

  9. 修改mysql数据库默认字符集_MySQL数据库之修改mysql默认字符集的两种方法详细解析...

    本文主要向大家介绍了MySQL数据库之修改mysql默认字符集的两种方法详细解析 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. (1) 最简单的修改方法,就是修改mysql的m ...

最新文章

  1. discuzx2.5添加自定义积分日志
  2. 【quartz】执行一次功能
  3. ASP.NET Core 集成测试
  4. [html] 列举下哪些块元素里面不能放哪些块元素呢?
  5. Linux 下安装 jdk-7u75-linux-x64.gz,jdk1.7.0_75,jdk1.7步骤:
  6. EF---延迟加载技术
  7. java appium_Android应用开发之AS+Appium+Java+Win自动化测试之Appium的Java测试脚本封装(Android测试)...
  8. oracle查询语句中case when的使用
  9. jquery-animate()动画
  10. Oracle执行计划变更
  11. 抓取腾讯校园招聘的第一页
  12. 报错解决:symbol lookup error-----undefined symbol: JLI_StringDup
  13. tensorflow实现Word2Vec——生成词向量以及降维可视化
  14. ECMAScript(pink)
  15. 3.5学习内容 宽带测速原理,RESTful架构,rpc个人理解
  16. 《妥协的完美主义—优秀产品经理的实践指南(卷一)》一1.3 UCD工作方法
  17. 操作符( ˃᷄˶˶̫˶˂᷅ )
  18. C#中this与base的区别
  19. AI治退“七天无理由退换货”
  20. 许昌一高2021年高考成绩查询,2021年许昌最好的高中排名,许昌重点高中升学率排名...

热门文章

  1. SAP 电商云 Spartacus 产品明细页面的 OCC API 是如何被触发的
  2. SAP Cloud for Customer Cloud Application Studio的Trace功能
  3. SAP Spartacus select option默认选择的实现
  4. 使用Chrome开发者工具研究JavaScript函数的原生实现原理
  5. SAP C4C里没有选择Port binding的url Mashup行为分析
  6. CL_FXS_URL_DATA_FETCHER - a good utility to fetch picture binary data according to url
  7. 如何使用ABAP把数字转换成单词
  8. why is list delete and edit icon rendered
  9. SAP UI5 Label related stuff and accessibility研究
  10. UI5 navigation logic