gpt4 book ai didi

java - getCanonicalFile 和 getAbsoluteFile 返回当前(项目)目录,而不是预期的目录

转载 作者:行者123 更新时间:2023-12-01 15:59:23 29 4
gpt4 key购买 nike

我尝试制作一个简单的程序,包含浏览本地文件系统的功能。

但是,直接输入地址时遇到了问题。

public void setWorkingDirectory(File newDir)
{
try
{
//try to eliminate redundancy
this.workingDir = newDir.getCanonicalFile();
}
catch (IOException e)
{
this.workingDir = newDir;
}
}

我需要在屏幕上显示的绝对路径。所以我使用getCanonicalFile()。一切正常,除了当我输入“D:”时,workingDir 将被设置为 Eclipse 中的当前项目目录(我认为它应该是独立执行时的当前目录,示例为“D:\EclipseWorkspace\workspace\FTPClient” )但文件 newDir 包含完全相同的路径(“D:”)(我跟踪了它)。

如果我输入“C:”或“D:\”,那么一切都很好。我在互联网上找不到任何关于此的信息。谁能告诉我这是怎么回事以及如何解决这个问题?

提前致谢。

编辑:如果重要的话,我在 Windows XP SP3 和 Java 6 上工作。

最佳答案

路径命令

D:

表示对磁盘D当前选择目录的更改。

鉴于

D:\

表示对D根目录的更改。

这是基本的 Windows,您会在 (CMD) 控制台窗口中获得相同的结果。

如果这确实是一个问题,您需要查看文件名并查看它是否以 File.separator 结尾,如果不是,请附加一个。

关于java - getCanonicalFile 和 getAbsoluteFile 返回当前(项目)目录,而不是预期的目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4311952/

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