在 Java 中,文件操作是一项常见且重要的任务。File
类用于表示文件和目录,而 InputStream
和 OutputStream
则用于读取和写入文件的内容。
一、File 类的用法
File
类主要用于处理文件和目录的相关操作,如创建、删除、重命名、判断文件或目录是否存在等。
import java.io.File;
public class FileExample {
public static void main(String[] args) {
// 创建一个表示文件的 File 对象
File file = new File("example.txt");
// 判断文件是否存在
if (file.exists()) {
System.out.println("文件存在");
} else {
System.out.println("文件不存在");
}
// 创建新文件
try {
if (file.createNewFile()) {
System.out.println("文件创建成功");
} else {
System.out.println("文件创建失败");
}
} catch (IOException e) {
e.printStackTrace();
}
// 获取文件的绝对路径
System.out.println("文件的绝对路径: " + file.getAbsolutePath());
// 获取文件的名称
System.out.println("文件的名称: " + file.getName());
// 判断是否是文件
if (file.isFile()) {
System.out.println("这是一个文件");
}
// 判断是否是目录
if (file.isDirectory()) {
System.out.println("这是一个目录");
}
}
}
二、InputStream 的用法
InputStream
用于从数据源读取数据。
import java.io.FileInputStream;
import java.io.IOException;
public class InputStreamExample {
public static void main(String[] args) {
try (FileInputStream fis = new FileInputStream("example.txt")) {
int data;
while ((data = fis.read())!= -1) {
System.out.print((char) data);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
在上述示例中,使用 FileInputStream
从文件中读取数据,并逐字节地输出。
三、OutputStream 的用法
OutputStream
用于向目标写入数据。
import java.io.FileOutputStream;
import java.io.IOException;
public class OutputStreamExample {
public static void main(String[] args) {
String data = "Hello, World!";
try (FileOutputStream fos = new FileOutputStream("output.txt")) {
fos.write(data.getBytes());
} catch (IOException e) {
e.printStackTrace();
}
}
}
这里使用 FileOutputStream
将字符串数据写入到文件中。
总之,File
类用于文件和目录的管理,而 InputStream
和 OutputStream
用于文件内容的读取和写入。熟练掌握这些类的用法,对于处理各种文件操作任务非常有帮助。