gpt4 book ai didi

java - 在 java 中使用绝对路径读取 CSV 文件给出异常

转载 作者:行者123 更新时间:2023-12-03 19:34:44 25 4
gpt4 key购买 nike

我试图创建一个程序来从任何 Windows 计算机上的下载文件夹中读取 CSV 文件,但无法让 Java BufferedReader 找到该文件。

我读到 java 可以处理绝对路径,所以我做了:

File f = new File("%systemdrive%\\users\\%username%\\Downloads\\quotes.csv");
BufferedReader br = new BufferedReader(new FileReader(f));

这引发了一个 IOException 消息:

 %systemdrive%\users\%username%\Downloads\quotes.csv (The system cannot find the path specified)

我通过在 File Explorer 中输入相同的路径来确保该文件存在,并且很容易地,该文件就出现了。

我想知道这样的事情是否可行,是否有某种方法可以找到并读取该文件。

感谢您的帮助!

最佳答案

%systemdrive%%username% 似乎是由文件资源管理器展开的环境变量。

您可能会发现 SO ( How to find out operating system drive using java?) 中的其他条目对获取 %systemdrive 的值很有趣。同样,您可以对 System.getenv 应用相同的调用来获取用户名。

FWIW,here Windows 中有一个环境变量列表。请注意 %HOMEPATH% 环境变量,它指向当前用户的主目录。

在所有这些前提下,您可以考虑使用以下代码来解决您的问题:

String userhome = System.getenv ("HOMEPATH");
File f = new File(userhome + "\\Downloads\\quotes.csv");
BufferedReader br = new BufferedReader(new FileReader(f));

关于java - 在 java 中使用绝对路径读取 CSV 文件给出异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39047800/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com