使用File.separator的相对路径

时间:2019-01-15 10:32:35

标签: java linux path

我的代码中包含硬编码路径。现在,我必须使用File.separator(或任何其他类),这样我的路径才能在Windows或Linux计算机上工作。

为什么我的新代码不起作用?帮我解决这个问题。

这是我的旧代码(适用于Windows):

readFile("./Use-cases/"+duplicatedExcelText);

这是我的新代码,会导致异常和错误:

readFile(File.separator+"."+File.separator+ "Use-cases"+File.separator +
 duplicatedExcelText);

2 个答案:

答案 0 :(得分:1)

这解决了我的问题:

readFile("."+ File.separatorChar + "Use-cases" + 

File.separatorChar + duplicatedExcelText);

答案 1 :(得分:0)

问题是您构造了一个字符串:

'\'+“。 ...

最后是

Windows不喜欢相对路径!

根据this,您可以将/用于所有操作系统。仅当您要向人类用户显示最终路径时才建议使用File.separator(以避免混淆)。