将我的代码(mac)中的绝对路径更改为我的电脑的相对路径

时间:2011-08-23 16:31:59

标签: java path filesystems transformation

我有一个netbeans项目设置,其中以下绝对路径指向我的硬盘上的文件。

/Users/Name/NetBeansProjects/DissertationUpnpDevices/src/my/upnpdevices/MSXbox360Device.java
/Users/Name/NetBeansProjects/DissertationUpnpDevices/src/my/upnpdevices/resources/description/MS_Xbox360description.xml

我将把我的项目移到电脑上,并且我一直试图将上述路径转换为相对路径。但它对我不起作用。到目前为止,我已经尝试过:

private final static String DESCRIPTION_FILE_NAME = "resources\description\MS_Xbox360\description.xml";
private final static String DESCRIPTION_FILE_NAME = "resources\/description\/MS_Xbox360\/description.xml";

但是上述两次尝试都不起作用。他们给我一个'非法逃脱字符'错误。我也尝试过以下

private final static String DESCRIPTION_FILE_NAME = "resources/description/MS_Xbox360/description.xml";
private final static String DESCRIPTION_FILE_NAME = "resources//description//MS_Xbox360//description.xml";
private final static String DESCRIPTION_FILE_NAME = "resources\\description\\MS_Xbox360\\description.xml";
private final static String DESCRIPTION_FILE_NAME = "./resources/description/MS_Xbox360/description.xml";
private final static String DESCRIPTION_FILE_NAME = ".//resources//description//MS_Xbox360//description.xml";
private final static String DESCRIPTION_FILE_NAME = ".\\resources\\description\\MS_Xbox360\\description.xml";

这些都给了我“java.io.FileNotFoundException”。关于如何将绝对mac URI转换为我的电脑的相对URI的任何其他建议? PC上的文件设置在相应的目录中。

1 个答案:

答案 0 :(得分:0)

您上面的大多数路径应该可以正常工作(具体的'./ resources / description / MS_Xbox360 / description.xml')。我刚刚完成了一个项目,Mac版本不喜欢带有'\\'的相对路径,所以我将它们改为'/',现在一切正常。此外,java.io.FileNotFoundException应该打印出它正在寻找的文件。仔细检查错误并确保文件实际存在或不存在。