如何在Java中访问通用用户的My Downloads文件夹?

时间:2014-08-13 21:35:30

标签: java selenium download automation autoit

我正在使用Chrome编写一些Selenium WebDriver和AutoIt Java Tests。 当我在Chrome中下载文件时,它会自动将其下载到我计算机上的“下载”文件夹中。 我正在与存储库中的多个其他用户共享此代码项目,因此我不希望我的下载文件夹中使用我的特定用户名进行硬编码。

我的意思是,我的计算机上的用户名是“Eamon”。我的机器上的下载文件夹是“C:\ Users \ Eamon \ Downloads”,但是让我的朋友Mark从共享存储库下载项目,他的下载文件夹将位于“C:\ Users \ Mark \ Downloads, “但是,当他从存储库中删除以查看我的更新代码时,下载位置仍将被硬编码为”“C:\ Users \ Eamon \ Downloads”,这将导致“文件夹不存在”错误。

java中有没有办法访问机器上的通用下载文件夹,该文件夹会根据机器用户的身份而改变?这对我的测试很有帮助。

2 个答案:

答案 0 :(得分:5)

对于Windows机器:

new File("C:/Users/" + System.getProperty("user.name") + "/Downloads/");

可以为任何其他操作系统使用类似的代码段。

答案 1 :(得分:2)

String myHomePath = System.getProperty(“user.home”);

文件文件=新文件(myHomePath +“/ Downloads /”+ fileName);

注意: 提供具有适当扩展名的文件名,例如foo.txt