IO流(输入输出 *** 作)

IO流(输入输出 *** 作),第1张

IO流(输入输出 *** 作)

1.回顾
  ①.运行时发生的错误称为异常。
  ②.Java使用try, catch,throw, throws和finally来处理ava异常。
  ③.被监控的代码写在try块中,用来括获和处理异常的代码写左catch块中,finally中放量         必须要 执行的代码。
  ④.要手动引发异常,可以使用关键字throw。抛到方法外部的任何异常都必须用throws        子句指定。
2.输入(input)与输出(output)
3.Java语言在IO设计方面取得较大的成功,它是完全面向对象的,主要采用装饰器模式避免大量的类,包括了最大的可能性,提供了较好的扩展机制。
4.Java的lO主要包含三个部分:
  ①.流式部分——IO的主体部分。
  ②.非流式部分——主要包含一些辅助流式部分的类。
  ③.文件读取部分的与安全相关的类以及与本地 *** 作系统相关的文件系统的类。
5.Java中的流 *** 作分为两种
  ①.基于字节流(InputStream读取,OutputStream写入)。
      例如:字节流一般用来处理图像、视频、音频、PPT、Word等类型的文件。
  ②.字符流(Reader读取,Writer写入)。
      例如:字符流一般用于处理纯文本类型的文件,如TXT文件等,但不能处理图像视频         等非文本文件。
  ③.用一句话说就是:字节流可以处理一切文件,而字符流只能处理纯文本文件。 字节        流本身没有缓冲区,缓冲字节流相对于字节流,效率提升非常高。 而字符流本身就        带有缓冲区,缓冲字符流相对于字符流效率提升就不是那么大了。
6.File类对象表示磁盘上的文件或目录它提供了与平台无关的方法来对磁盘上的文件或目
   录进行 *** 作。
7.FilelnputStream提供了测试文件大小的方法available(),提供了关闭流的方法close()     ,使用read()方法从数据源中读取数据。可以使用缓冲区,通过指定byte[]b的大小来提    高效率——如果不设计缓冲区,那么只能一个字节一个字节的读取,效率太低。
8.缓冲区减少io的磁盘 *** 作,提升效率,提升磁盘寿命。
   ①.FilelnputStream提供了测试文件大小的方法available(),提供了关闭流的方法close(),使用read()方法从数据源中读取数据。可以使用缓冲区,通过指定byte[]b的大小来提 高效率。如果不设计缓冲区,那么只能一个字节一个字节的读取,效率太低。
   ②.举个例子来讲:可认为创建了一个瓢(缓冲区),能盛放200毫升的水,使用这个瓢从  缸里舀水到另外一个缸里,舀到多少就倒多少(舀200ml就倒200ml,舀10ml就倒10ml) ,如果什么也没有舀到,就停止取水在使用的时候, *** 作完成后,注意关闭文件流。
9.BufferedReader与BufferedWriter实现了自带缓冲区的字符流高效读写,其最小 *** 作单
元为一个字符(16位),同时,我们也可以自己指定缓冲区的大小,默认的缓冲区有8192个字符,通常情况下已经足够了。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5672900.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存