Java的IO流和异常处理

Java的IO流和异常处理

ID:41323949

大小:662.00 KB

页数:110页

时间:2019-08-22

Java的IO流和异常处理_第1页
Java的IO流和异常处理_第2页
Java的IO流和异常处理_第3页
Java的IO流和异常处理_第4页
Java的IO流和异常处理_第5页
资源描述:

《Java的IO流和异常处理》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第四章Java的I/O流和异常处理4.1I/O流概述4.2字节级输入输出流4.3字符流的处理4.4文件处理4.5对象序列化4.6异常及其处理4.7自定义异常4.8本章小结第四章Java的I/O流和异常处理学习导读本章将介绍Java中的几种I/O流方法和应用,以及文件处理、对象序列化和Java中异常的编写和处理。4.1I/O流的概念流是指流动的数据序列,可分为输入流和输出流。在程序设计语言中,流式输入输出是一种常见的输入输出方式。它是一个比文件更加广泛的概念。输入流用来把数据从计算机外的数据源输入到计算机。例如从键盘,扫描仪,摄像头,网络等数据

2、源输入数据。输出流是将计算机中的数据输出到外部设备的流。例如将要打印的信息发送到打印机,将计算的结果显示到显示设备上流的最大特点就是所有数据的传输都是按照数据序列的顺序进行的。每个数据必须等待排在它前面的数据读入或送出之后才能被读写Java中采用类的方式实现I/O流。I/O流的概念在Java中标准的输入设备是键盘,标准的输出设备是终端或显示器。他们分别对应System类中的变量in,out和err。这三个变量在System类中的声明如下:publicstaticfinalInputStreaminpublicstaticfinalPrintS

3、treamoutpublicstaticfinalPrintStreamerr对于PrintStream类最常用的两个方法为:publicvoidprint();publicvoidprintln();这两个方法的主要区别在于print()方法输出的字符串不自动换行,除非在待输出的字符串结尾有换行符””。println()方法则在输出字符串后进行换行操作。I/O流的概念publicclassTestPrint{publicstaticvoidmain(Stringargs[]){System.out.print("HelloJava.")

4、;System.out.print("HelloJack.");System.out.println("HelloTom.");System.out.println("HelloJerry.");}}Print语句输入内容到屏幕上,但是不换行,所以前两print语句输出的内容在同一行中后两输出语句会自动在输出完毕后加上换行符,所以后两输出语句应该分别输出到两行InputStream类层次结构虚线框表示的类可以打开某个具体的数据源或目标流,进行读写实线框表示的类可以连接到其他数据流,执行数据转换、缓存和过滤等处理。以下同。OutputStr

5、eam类层次这两个类直接继承了Object类,InputStream和OutputStream都是抽象类,它们分别是其他所有字节输入流(7个)和字节输出流(5个)的超类。InputStream的方法从流中读取数据abstractintread();//从输入流读取下一个字节,-1表示输入结束,这是一个阻塞方法intread(byteb[]);//从输入流读取一组数据存入缓冲区b中。返回读取的字节个数,-1表示结束。intread(byteb[],intoff,intlen);//从输入流读取最多len字节数据存入缓冲区b中,并从数组b的第of

6、f个位置开始存放intavailable();//返回输入流中无需阻塞可直接读取字节个数longskip(longn);//从输入流中忽略n和字节的数据,返回实际忽略的字节个数InputStream的方法(cont.)关闭流close();//关闭输入流使用输入流中的标记voidmark(intreadlimit);//在输入流中标记当前位置,以后可调用reset方法返回该位置,参数readlimit设置调用mark方法后可以读取的最大字节数且保持mark标记有效,并非所有的流都支持mark和reset方法voidreset();//重置流的

7、读取位置,回到上次调用mark方法标记的位置booleanmarkSuppont();//检测输入流是否支持mark和reset方法OutputStream的方法输出数据abstractvoidwrite(intb);//向输出流写入一个字节,写出字节为整数b的低字节,其高3个字节被忽略voidwrite(byteb[]);//把缓冲区b中的全部数据写入输出流voidwrite(byteb[],intoff,intlen);//把缓冲区b中从b[off]开始的len个字节的数据写入输出流voidflush()//刷新输出流,强制输出所有被缓存

8、的字节voidclose();//关闭输出流在实际应用中,常用InputStream和OutputStream类的引用指向它们的具体实现的子类对象。4.2字节级输入

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

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

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