全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 流是生产或消费信息的一种抽象描述 通过 java 的输入 输出系统与外部设备连接 并为所有的输入 输出提供统一 简单的操作方法 输入流和输出流不是绝对不变的 对于一个文件而言 当向其中写入数据时 它就是一个输出流 当从其中读取数据时 它就是一个输入流 对于键盘来说 只能是输入流 显示器则只能是一个输出流 在 io 包中 还根据流中的数据类型不同 将流分为字节流类和字符流类 其中 字节流类专门负 责处理以字节为传输单位的操作 而字符流类则专门负责处理以字符为传输单位的操作 根据流的建立方式和工作原理 还将流类分为节点流和过滤流类 节点流类用于直接在输入输出 媒介之上建立流 而过滤流类则用于对节点流类功能上的扩展 此时它必须先以某一个节点流对象作为 流的来源 然后可以修改已经读出或写入的数据 包括加密和压缩的数据 甚至还可以简单地利用自身 提供的附加方法将已经读出或者写入的数据转化成其他格式 System in 是标准的输入流 默认情况下 它指的是键盘 System out 是标准的输出流 默认情 况下 它指的是某一个控制台 如显示器 System err 指的是标准的错误流 它默认也是控制台 File 类在 java 中 它既可以代表一个特定文件 也可以代表目录内一系列文件的集合 当代表 的是一个文件的集合时 便可以使用目录所特有的属性 list 方法来查询这个集合 并列出当前集合 中的文件名 该方法返回的是一个字符串数组 指定目录下的所有文件都列出来 import java io class ListAllFiles public void listPath File path File files path listFiles 获得当前目录对象下的所有文件 for int i 0 i0 File currentDir File dirs getFirst File files currentDir listFiles boolean emptyDir true for int i 0 i files length i if files i isFile System out println Deleting files i getAbsolutePath try files i delete catch SecurityException e e printStackTrace else dirs addFirst Files i emptyDir false if emptyDir System out println Deleting currentDir getAbsolutionPath try currentDir delete catch SecurityException e e printStackTrace 3 dirs removeFirst else if dir isFile System out println Error dir getName is a file else System out println Error dir getName is unknow public static void main String args File dir new File args 0 DeleteDir delDir new DeleteDir dir flush 方法仅用于支持缓冲区操作的输出流类 而 fileOutputStream 类是用于直接操作目标设备所对 应的节点流类 因此该流类不支持 flush 方法 直接操作目标设备的节点流类还有 ByteArrayOutputStream 文本文件与二进制文件的区分 简单的办法就是把所有可以用于文本编辑器打开的文件都称为文本文件 如 txt bat ini 文件等 这些文件中所有的字符都是可读的 ASCII 码字符 除了这些文件之外其他所有不能被文本编辑器正确打 开的文件都是二进制文件 Word 文件不能被文本编辑器打开 自然就是二进制文件 BufferInputStream 类可以对任何的 InputStream 流进行带缓冲的封装以达到性能的改善 它的实现原 理是 在已定义输入流上再定义一个具有缓冲的输入流 可以从此流中成批地读取字节 而不会每次都 引起直接对数据源的读操作 数据输入时 首先被放入缓冲区 随后的读操作 就是对缓冲区中内容进 行访问 4 BufferOutputStream 类可以对任何的 OutputStream 流进行带缓冲的封装以达到性能的改善 这是因为 用户在缓冲输出流中写入字节时 不会每次都直接对数据宿进行写操作 而是当缓冲区已满或者清空流 时 数据才写到数据宿上 BufferOutStream 提供了一个 flush 方法可以用来将缓冲区的数据强制输出到数据宿 可见 与缓冲 区输入流不同的是 建立缓冲区输出流可以通过减少系统实际写数据的时间和次数来改善 I O 性能 flush 方法并不是对所有的输出流都起作用 而是只对那些使用了缓冲区的输出流才有效 而且如果 调用了 close 方法 系统也会在关
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年社区工作者考试真题库附答案
- 2026年大学生素质教育活动合同
- 2025年保安员证考试题库及答案
- 2025年科创板股票投资知识题库及答案
- 2025年反假币知识培训应知应会考试题库含答案
- 初中心理健康浙教版八年级上册(边玉芳)第八课 网络是把双刃剑教案设计
- 人工智能识别财报舞弊的实证研究
- 大单元教学设计 八年级上册 第三单元 资产阶级民主革命与中华民国的建立
- 2025年临床执业医师考试技能操作要求试题及答案
- 《丰收中国年》教学设计-2025-2026学年中职基础课-全一册-高教版(2023)-(音乐)-69
- GB/T 15622-2023液压缸试验方法
- 挖掘机维护保养记录
- 2023年河南郑州工业安全职业学院招聘工作人员44人笔试参考题库(共500题)答案详解版
- 高三一模家长会课件
- 非车险理赔测试题
- 家长进课堂美食方案
- 管道支吊架设计计算-V1.0
- 2023年科目一考试题库题含标准答案
- EMC基本知识及要求
- 快速路下穿高铁工程钢结构制造驻厂监理工作情况汇报材料
- 产品组装记录填写说明
评论
0/150
提交评论