版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Java程序设计基础第7章 Java IO流本章主要内容输入输出流字节流和字符流文件及文件流过滤流标准流对象流Scanner类流的选择第7章 Java IO流 输入和输出是任何程序设计语言均必须具备且重要的功能,具备了良好输入、输出功能的程序才能与用户更好的交流。输入输出的含义很广,除了通常的键盘输入、显示器输出外,还包括文件、网络连接等。Java的输入输出类库中包含了丰富的系统工具,这些类被定义在java.io包中。 本章将详细介绍IO类库中的基本内容,主要侧重于流的基本概念和文件的输入输出流管理。7.1 输入输出流流(Stream)包java.ioJava中各种常用IO流及其作用流的分类从
2、流的流动方向来看,可以将IO流分为输入流和输出流从流的数据处理单位来看,可以将IO流分为字节流和字符流从流的功能来看,还可以将IO流分为节点流和过滤流Java IO操作的关键7.2 字节流和字符字节流InputStream 字节输入流基类OutputStream字节输出流基类字符流Reader 字符输入流基类Writer 字符输出流基类7.2 字节流和字符InputStream 图7-2 输入字节流类InputStream的继承关系7.2 字节流和字符InputStream表7-2 InputStream类的常用方法7.2 字节流和字符OutputStream图7-3 输出字节流类Output
3、Stream的继承关系7.2 字节流和字符OutputStream表7-3 OutputStream类的常用方法7.2 字节流和字符Reader图7-4 输入字符流类Reader的继承关系7.2 字节流和字符Reader表7-4 Reader类的常用方法7.2 字节流和字符Writer图7-5 输出字符流类Writer的继承关系7.2 字节流和字符Writer表7-5 Writer类的常用方法7.3 文件及文件流7.3.1文件及目录管理File类表7-6 File类的常用方法和属性7.3 文件及文件流7.3.1 文件及目录管理File类表7-6 File类的常用方法和属性7.3 文件及文件流7
4、.3.1文件及目录管理文件路径的表示在Windows系统下文件名称分隔符使用 “/”或转义字符“”,而linux中使用“/”。File.separator 7.3 文件及文件流7.3.2 文件的字节流读写文件的字节流读写FileInputStreamFileOutputStream 7.3 文件及文件流7.3.2 文件的字节流读写FileInputStream 表7-7 FileInputStream类的常用构造方法7.3 文件及文件流7.3.2 文件的字节流读写FileOutputStream 表7-8 FileOutputStream类的常用构造方法7.3 文件及文件流7.3.2 文件的字
5、节流读写Java中IO流操作的基本流程 在Java中IO流操作的基本流程都十分相似,以文件流为例,一般的操作流程如下: 使用File类定位一个文件; 通过字节流或字符流的子类进行流对象的实例化; 进行读/写操作; 关闭字节或字符流。 7.3 文件及文件流7.3.3 文件的字符流读写文件的字符流读写FileReaderFileWriter文件字节流和字符流的区别 7.3 文件及文件流7.3.4 随机文件的读写类RandomAccessFile 表7-9 RandomAccessFile类的常用方法7.4 过滤流 java.io中提供的类FilterInputStream和FilterOutput
6、Stream在读/写数据的同时可以对数据进行特殊处理。另外还提供了同步机制,使得某一时刻只有一个线程可以访问一个输入/输出流。 常用的有缓冲流、数据流和打印流。 7.4 过滤流7.4.1缓冲流 缓冲流类BufferedInputStreamBufferedOutputStreamBufferedReaderBufferedwriter 图7-5 缓冲流实现文件的拷贝流程7.4 过滤流7.4.1缓冲流 缓冲流包装文件流 File inFile=new File(file1.txt); File outFile=new File(file2.txt); FileInputStream fis=ne
7、w FileInputStream(inFile); FileOutputStream fos=new FileOutputStream(outFile); /缓冲流包装文件输入流 BufferedInputStream bin = new BufferedInputStream(fis,256); /缓冲流包装文件输出流 BufferedOutputStream bout = new BufferedOutputStream(fos,256); 图7-5 缓冲流实现文件的拷贝流程7.4 过滤流7.4.2 数据流 数据流类DataInputStreamDataOutputStream举例,如:
8、 /向data.txt写入各种类型的数据 FileOutputStream fos = new FileOutputStream(data.txt); DataOutputStream dos = new DataOutputStream (fos);dos.writeBoolean(true);dos.writeByte(byte)123); /从data.txt中读取各种类型的数据FileInputStream fis = new FileInputStream(data.txt);DataInputStream dis = new DataInputStream(fis); System
9、.out.print(dis.readBoolean(); System.out.print(t +dis.readByte(); 7.4 过滤流7.4.3 打印流 打印流类PrintStream 7.5 标准流 public static final InputStream in 标准输入,一般是键盘;public static final PrintStream out 标准输出,通常是显示器;public static final PrintStream err 错误信息输出,通常是显示器。7.6 对象流 对象序列化java.io.Serializable接口如:import java.
10、io.Serializable;class Student implements Serializable /串行化必须要实现的接口对象流ObjectOutputStreamObjectInputStream关键字transient transient int age; /age属性将不能被序列化 7.7 Scanner类 java.util.Scanner表7-12 Scanner类的常用方法7.8 流的选择 IO类的选择选择合适的节点流选择合适方向的流选择字节流或字符流包装流的选择选择符合要求功能的流选择合适方向的流小结 本章对Java的IO流进行了详细介绍,首先对IO流的分类作了说明,特别将IO流分为字节流和字符流讲解作了详细说明,然后重点介绍了常用的输入输出对象File和文件流操作,还介绍了标准流、过滤流中的缓冲流、数据流、打印流和对象流,以及Scanner类,在本章的最后讨论了在实际应用中如何选择恰当的流类。本章作业(1)编写
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安装工程综合险种2024年保险协议
- 2024跨国劳务输出协议范例
- 2024食堂运营管理承包协议条款细则
- 2024年协议执行保证金协议格式指南
- 2024届THUSSAT北京市清华大学中学高三下学期领军考试数学试题
- 保姆服务协议:老年照护专项
- 2024年专业接驳车配件订购协议格式
- DB11∕T 1650-2019 工业开发区循环化技术规范
- 2024年工程现场工长职务聘用协议
- 2024年财务总监职业协议范本
- 主动脉夹层内科试题及答案
- 有限空间作业安全交底
- 初中数学新课标培训心得
- 护士如何处理病患的沟通和冲突问题
- 泵与泵站知识点总结
- 大班音乐《小老鼠和泡泡糖》课件
- 12、口腔科诊疗指南及技术操作规范
- 四年级上册Unit1 My classroom作业设计案例
- 孕产妇妊娠风险筛查与评估
- 走出舒适区:如何突破自我设限获得持久行动力
- 中国成人患者肠外肠内营养临床应用指南(2023版)
评论
0/150
提交评论