使用Java文件I/O函数读取和写入文件
发布时间:2023-09-23 18:36:12
Java提供了许多文件I/O函数,用于读取和写入文件。下面将介绍几个常用的函数。
1. FileInputStream和FileOutputStream
FileInputStream类用于从文件中读取字节流,而FileOutputStream类用于向文件中写入字节流。这两个类的构造函数需要传入文件的路径作为参数。下面的代码示例展示了如何使用这两个类读取和写入文件:
try {
// 读取文件
FileInputStream fis = new FileInputStream("input.txt");
int data;
while ((data = fis.read()) != -1) {
// 处理读取的字节
}
fis.close();
// 写入文件
FileOutputStream fos = new FileOutputStream("output.txt");
String content = "Hello, World!";
fos.write(content.getBytes());
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
2. BufferedReader和BufferedWriter
BufferedReader类使用了缓冲区来提高文件的读取效率,而BufferedWriter类使用了缓冲区来提高文件的写入效率。这两个类的构造函数需要传入一个Reader或Writer对象作为参数。下面的代码示例展示了如何使用这两个类读取和写入文件:
try {
// 读取文件
BufferedReader reader = new BufferedReader(new FileReader("input.txt"));
String line;
while ((line = reader.readLine()) != null) {
// 处理读取的文本行
}
reader.close();
// 写入文件
BufferedWriter writer = new BufferedWriter(new FileWriter("output.txt"));
writer.write("Hello, World!");
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
3. Scanner和PrintWriter
Scanner类可用于从文件中读取各种类型的数据,而PrintWriter类可用于向文件中写入各种类型的数据。这两个类的构造函数需要传入一个File对象或文件路径作为参数。下面的代码示例展示了如何使用这两个类读取和写入文件:
try {
// 读取文件
Scanner scanner = new Scanner(new File("input.txt"));
while (scanner.hasNext()) {
String word = scanner.next();
// 处理读取的单词
}
scanner.close();
// 写入文件
PrintWriter writer = new PrintWriter("output.txt");
writer.println("Hello, World!");
writer.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
以上是几个常用的Java文件I/O函数的示例。通过这些函数,您可以灵活地读取和写入文件,并根据需要处理所读取的数据。在实际开发中,可以根据具体的需求选择适合的函数来操作文件。
