2011-08-23 150 views
1

我有一个netbeans项目设置,其下面的绝对路径指向我的硬盘上的文件。将我的代码(mac)中的绝对路径更改为我的电脑的相对路径

/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"; 

但是上述2次尝试不起作用。他们给我一个'非法转义字符'的错误。我也尝试过以下几种:

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上的文件安装在相应的目录中。

+0

这是相对于什么? – adarshr

+0

相对于netbeans项目。 description.xml文件驻留在我的netbeans项目下的一个名为'resources'的目录中 – Joeblackdev

+0

您是否尝试过绝对路径? C:\ etc ... –

回答

0

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

+0

文件丢失了......我简直不敢相信!我已经把这个项目从一个mac移到了pc上。谢谢您的帮助 – Joeblackdev