JAVA文件输入和输出流遇到的坑

关于IO流,只要使用完毕后,就要直接关闭掉,然后在finally里面也要进行关闭掉。

使用完后就直接调用close()方法关闭掉,是为了防止部分读取的流还在缓存字节中,导致文件内容缺少

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,这个实验的主要目的是让学生掌握Java文件及目录操作的基本概念和使用方法,同时能够处理异常情况,确保程序的健壮性。下面我将为你详细介绍实现步骤。 1. 文件与目录的创建 使用Java中的File类可以很方便地对文件和目录进行创建,示例代码如下: ```java // 创建文件 File file = new File("test.txt"); if (file.createNewFile()) { System.out.println("文件创建成功!"); } else { System.out.println("文件已存在!"); } // 创建目录 File dir = new File("testDir"); if (dir.mkdir()) { System.out.println("目录创建成功!"); } else { System.out.println("目录已存在!"); } ``` 2. 文件的读写 使用Java中的输入输出流可以很方便地对文件进行读写操作,示例代码如下: ```java // 写入文件 try (FileWriter writer = new FileWriter("test.txt")) { writer.write("Hello, world!"); writer.flush(); System.out.println("写入成功!"); } catch (IOException e) { e.printStackTrace(); } // 读取文件 try (FileReader reader = new FileReader("test.txt")) { int c; while ((c = reader.read()) != -1) { System.out.print((char) c); } } catch (IOException e) { e.printStackTrace(); } ``` 3. 文件的复制 使用Java中的输入输出流和缓冲区可以很方便地对文件进行复制操作,示例代码如下: ```java // 复制文件 try (FileInputStream input = new FileInputStream("test.txt"); FileOutputStream output = new FileOutputStream("test_copy.txt")) { byte[] buffer = new byte[1024]; int len; while ((len = input.read(buffer)) != -1) { output.write(buffer, 0, len); } System.out.println("复制成功!"); } catch (IOException e) { e.printStackTrace(); } ``` 4. 异常处理 在对文件进行操作时,可能会遇到一些异常情况,例如文件不存在、无法读取等,我们需要对这些异常进行处理,以保证程序的健壮性。示例代码如下: ```java // 读取不存在的文件 try (FileReader reader = new FileReader("notExist.txt")) { int c; while ((c = reader.read()) != -1) { System.out.print((char) c); } } catch (IOException e) { System.out.println("文件不存在!"); } ``` 以上就是实现文件与目录的创建、读写、复制等基本操作以及对异常情况进行处理的方法。希望对你有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值