如何读文件 java
读取文件的方法
在Java中,读取文件可以通过多种方式实现,以下是几种常见的方法:
使用BufferedReader读取文本文件
BufferedReader是一种高效的文本文件读取方式,适合逐行读取内容。

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class ReadFile {
public static void main(String[] args) {
String filePath = "path/to/your/file.txt";
try (BufferedReader br = new BufferedReader(new FileReader(filePath))) {
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
使用Scanner读取文本文件
Scanner类提供了一种简单的方式来解析文本文件,适合按特定分隔符读取内容。

import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class ReadFile {
public static void main(String[] args) {
String filePath = "path/to/your/file.txt";
try (Scanner scanner = new Scanner(new File(filePath))) {
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
System.out.println(line);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
使用Files类读取文本文件
Java 7引入的Files类提供了一种简洁的方式来读取文件内容,适合读取小文件。
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;
import java.io.IOException;
public class ReadFile {
public static void main(String[] args) {
String filePath = "path/to/your/file.txt";
try {
List<String> lines = Files.readAllLines(Paths.get(filePath));
for (String line : lines) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
使用FileInputStream读取二进制文件
对于二进制文件,可以使用FileInputStream来读取字节数据。
import java.io.FileInputStream;
import java.io.IOException;
public class ReadFile {
public static void main(String[] args) {
String filePath = "path/to/your/file.bin";
try (FileInputStream fis = new FileInputStream(filePath)) {
int content;
while ((content = fis.read()) != -1) {
System.out.print((char) content);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
注意事项
- 文件路径可以是绝对路径或相对路径,相对路径相对于项目根目录。
- 使用try-with-resources语句可以自动关闭资源,避免内存泄漏。
- 对于大文件,建议使用BufferedReader逐行读取,避免内存溢出。
以上方法涵盖了Java中常见的文件读取场景,可以根据具体需求选择合适的方式。






