java如何读取文件
读取文件的方法
在Java中,读取文件可以通过多种方式实现,具体取决于文件类型和需求。以下是几种常见的方法:
使用 FileReader 和 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();
}
}
}
使用 Files 类(Java 7及以上)
Files 类提供了简便的方法来读取文件内容,适合一次性读取小文件。

import java.nio.file.Files;
import java.nio.file.Paths;
import java.io.IOException;
import java.util.List;
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();
}
}
}
使用 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();
}
}
}
使用 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)以提高性能。






