运用JDK提供的与I/O相关的API实现文件与目录的创建、读写、复制等基本操作,对于读取不存在的文件进行异常处理。在讲授完 JAVA 异常处理和输入输出后开设此实验。目的通过实验理解输入输出流的基本概念和使用,学会文件与目录的基本操作。
时间: 2023-07-14 22:13:36 浏览: 106
好的,这个实验的主要目的是让学生掌握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("文件不存在!");
}
```
以上就是实现文件与目录的创建、读写、复制等基本操作以及对异常情况进行处理的方法。希望对你有所帮助。
阅读全文