第8章-输入与输出处理.ppt

第8章-输入与输出处理.ppt

ID:61905892

大小:153.00 KB

页数:51页

时间:2021-03-26

第8章-输入与输出处理.ppt_第1页
第8章-输入与输出处理.ppt_第2页
第8章-输入与输出处理.ppt_第3页
第8章-输入与输出处理.ppt_第4页
第8章-输入与输出处理.ppt_第5页
资源描述:

《第8章-输入与输出处理.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第8章输入与输出处理本章讲述的主要内容流的层次结构;输入/输出流、数据输入/输出流、文件输入/输出流及它们的常用方法;随机访问流;对象流以及对象序列化;输入/输出中的异常处理。18.1流的层次结构Java将读取数据的对象称为输入流;能向其写入数据的对象称为输出流。使用输入/出流必须在程序的开头加上语句importjava.io.*。InputStream和OutputStream类结构如图8-1(a)和8-1(b)。2348.2File类File类与InputStream/OutputStream类同属于一个包,它不允许访问文件内容。File类主要用于命名文件、查询文件属性

2、和处理文件目录。例如程序8-1。5importjava.io.*;//程序8-1publicclassshowAttribute{voidshowAttributes(StringfileName){Filef=newFile(fileName);if(f.exists()){System.out.println("Attributesof"+fileName);System.out.println("Exist:"+f.exists());System.out.println("Canread:"+f.canRead());System.out.println("Canwrite:

3、"+f.canWrite());System.out.println("Isfile:"+f.isFile());System.out.println("Isdirector:"+f.isDirectory());System.out.println("Isabsolutepath:"+f.isAbsolute());}elseSystem.out.println(fileName+"doesnotexist!");}6publicstaticvoidmain(Stringargs[]){if(args.length!=1){System.out.println("Usage:jav

4、afileTest");System.exit(1);}showAttributeobj=newshowAttribute();obj.showAttributes(args[0]);}}7采用该程序测试其自身,运行结果如下:AttributesofshowAttribute.javaExist:trueCanread:trueCanwrite:trueIsfile:trueIsdirector:falseIsabsolutepath:false88.3InputStream类和OutputStream类它们都是抽象类,不能创建对象;必须通过其子类实现实例化。98

5、.3.1InputStream类的常用方法1.publicabstractintread():读取一个byte的数据,返回值是高位补0的int类型值。2.publicintread(byteb[]):读取b.length个字节的数据放到b数组中。返回值是读取的字节数。该方法实际上是调用下一个方法实现的。3.publicintread(byteb[],intoff,intlen):从输入流中最多读取len个字节的数据,存放到偏移量为off的b数组中。108.3.1InputStream类的常用方法(续)4.publicintavailable():返回输入流中可以读取的字节数。注意:若

6、输入阻塞,当前线程将被挂起。5.publiclongskip(longn):忽略输入流中的n个字节,返回值是实际忽略的字节数。6.publicintclose():关闭输入流。118.3.2OutputStream类的常用方法1.publicvoidwrite(byteb[]):将参数b中的字节写到输出流。2.publicvoidwrite(byteb[],intoff,intlen):将参数b的从偏移量off开始的len个字节写到输出流。3.publicabstractvoidwrite(intb):先将int转换为byte类型,把低字节写入到输出流中。128.3.2OutputS

7、tream类的常用方法(续)4.publicvoidflush():将数据缓冲区中数据全部输出,并清空缓冲区。5.publicvoidclose():关闭输出流并释放与流相关的系统资源。注意以下两点:1.上述各方法都有可能引起异常。2.InputStream和OutputStream都是抽象类,不能创建这种类型的对象。138.3.3FileInputStream类FileInputStream类是InputStream类的子类,用来处理以文件作为数据输入源

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。