在Java中,可以使用java.io.File或java.nio.file.Path来读取jar包外部的文件。以下是一种常见的方法:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class Main {
public static void main(String[] args) {
String filePath = "path/to/external/file.txt"; // 外部文件的路径
try (BufferedReader reader = new BufferedReader(new FileReader(filePath))) {
String line;
while ((line = reader.readLine()) != null) {
// 处理文件内容
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
在上面的例子中,首先指定外部文件的路径,然后使用BufferedReader来读取文件的内容。在try块中使用FileReader来打开文件,并逐行读取文件内容,然后在while循环中处理每一行的内容。请注意,在读取完文件后,需要关闭BufferedReader对象,以释放资源。
另一种使用java.nio.file.Path读取外部文件的方法如下:
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.List;
public class Main {
public static void main(String[] args) {
String filePath = "path/to/external/file.txt"; // 外部文件的路径
try {
Path path = Paths.get(filePath);
List<String> lines = Files.readAllLines(path);
for (String line : lines) {
// 处理文件内容
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
使用Paths.get(filePath)方法获取外部文件的路径,然后使用Files.readAllLines(path)方法读取文件的所有行,并将其存储在一个List中。然后可以使用for循环遍历List中的每一行,并进行相应的处理。同样,需要在读取完文件后关闭文件资源。