黑马程序员技术交流社区

标题: java中关于io流的问题 [打印本页]

作者: tanshion    时间: 2014-6-13 00:58
标题: java中关于io流的问题
本帖最后由 tanshion 于 2014-6-13 10:07 编辑

java中关于io流的问题
io流中为什么一定要把对文件的读写放在try  catch中,对文件的读写可能出现什么异常?

作者: 496080891    时间: 2014-6-13 03:31
你随便输入个文件名,比如d:\\aaa.txt,而你的d盘下没有aaa.txt,就会报错。
作者: axuan    时间: 2014-6-13 07:29
[Window Title]
Windows Update

[Main Instruction]
重新启动计算机以完成重要更新的安装

[立即重新启动(N)] [推迟(P)]
作者: axuan    时间: 2014-6-13 07:30
几种可能的异常(IOException的一些子类,这些是有关文件读写方面可能抛出的异常,还可能有其他方面异常,参考JDK API文档的IOException类的子类)
总体说有:文件不存在,读取写入出错(如磁盘硬件错误、写保护、无空间等),权限问题(文件被锁定、无访问权限等)
EOFException:
当输入过程中意外到达文件或流的末尾时,抛出此异常。
此异常主要被数据输入流用来表明到达流的末尾。注意,其他许多输入操作返回一个特殊值表示到达流的末尾,而不是抛出异常。
FileLockInterruptionException:
当某个线程正在等待获取文件锁定时被另一个线程中断,则由该线程接收此经过检查的异常。抛出此异常之前,将设置以前被阻塞的线程的中断状态。
FileNotFoundException:
当试图打开指定路径名表示的文件失败时,抛出此异常。
在不存在具有指定路径名的文件时,此异常将由 FileInputStream、FileOutputStream 和
RandomAccessFile
构造方法抛出。如果该文件存在,但是由于某些原因不可访问,比如试图打开一个只读文件进行写入,则此时这些构造方法仍然会抛出该异常。
IIOException:
该异常类用于发出关于读取和写入操作的运行时故障的信号。
InterruptedIOException:
I/O 操作已中断信号,抛出此异常。抛出 InterruptedIOException
指示输入或输出传输已经终止,原因是执行此操作的线程中断。字段 bytesTransferred
指示在发生中断之前已成功传输了多少字节。

作者: uu993    时间: 2014-6-13 09:43
比如说,你读取的路径下没有那个文件,或者你读取的文件IO程序没法进行识别,那样的话要是不用try catch,出现异常就没法找原因了~
作者: a6217815    时间: 2014-6-13 09:52
最常见的就是 你读文件的时候,指定路径没有你指定的文件,写入的时候,找不到路径 也会报异常




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2