可以用 JFileChooser直接打开包里已经有的文件吗而不是让用户自己选择
时间: 2023-12-07 22:02:14 浏览: 99
JFileChooser 运用
可以使用JFileChooser直接打开包中已经有的文件。以下是一个示例代码片段,用于打开包中的文件:
```java
String fileName = "questions.txt";
InputStream inputStream = getClass().getResourceAsStream(fileName);
Scanner scanner = new Scanner(inputStream, StandardCharsets.UTF_8);
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
// 处理行数据
}
scanner.close();
```
这个代码片段假设有一个名为"questions.txt"的文件在程序包中。它使用getClass().getResourceAsStream()方法获取文件的InputStream,并使用Scanner读取文件的内容。你可以在while循环中处理每一行的数据。
请注意,如果你打算修改文件的内容,你需要将其复制到程序运行时可以写入的位置。你可以使用以下代码获取程序可以写入的目录:
```java
String userHomeDir = System.getProperty("user.home");
File appDir = new File(userHomeDir, ".myapp");
if (!appDir.exists()) {
appDir.mkdir();
}
File file = new File(appDir, "questions.txt");
```
这个代码片段获取用户主目录并在其中创建一个名为".myapp"的目录。它还创建一个名为"questions.txt"的文件。你可以将文件从程序包中复制到这个位置,并对其进行修改。
阅读全文