我正在攻读OCP考试这些课程的I / O:
- OutputStream子类:
FileOutputStream中
的BufferedOutputStream
DataOutputStream类
PrintStream(我看到它的方法write()不抛出异常)
- 编写器子类:
的FileWriter
但是BufferedWriter
PrintWriter(我看到它的方法write()不抛出异常)
- 读者子类:
的FileReader
的BufferedReader
- InputStream子类:
的BufferedInputStream
FilterInputStream中
ObjectInputStream的
我的问题:对于读取和写入的主要方法(具有不同的签名),这些类中的每一个何时抛出IOException?在javadoc中只有一个短语:
IOException - 如果发生I / O错误
没有对案件的解释。
我知道这个(我不知道这些是否正确):
- 如果文件不存在,FileOutputStream将抛出java.io.FileNotFoundException。实际上,这个类不会创建文件;
- 如果文件不存在,FileWriter会抛出java.io.FileNotFoundException。这个类实际上不会创建文件;
- 如果文件不存在,BufferedReader将抛出java.nio.file.NoSuchFileException(IOException的子类);
- 如果文件不存在,FileInputStream将抛出java.io.FileNotFoundException。
非常感谢!
一个。