file I / O java绝对与相对文件名

时间:2013-11-15 23:53:03

标签: java

对于文件I / O.我们被告知使用相对文件名与绝对文件名。所以我的问题是为什么使用相对文件名而不是绝对名称更好?

3 个答案:

答案 0 :(得分:1)

绝对文件名是平台相关的,而相对的文件名只是指向您所在的文件夹。

答案 1 :(得分:1)

  

为什么使用相对文件名而不是绝对名称更好?

这取决于你实际在做什么。实际上,出于某些目的,绝对路径优于相对路径。

绝对路径的主要优点是它总是意味着相同的东西。

绝对路径的主要缺点是,如果移动文件(或树),则更改其绝对路径。如果您之前将某个文件的位置保存为绝对路径,则现在必须更改它。

相对路径的优点是

  • 他们更短,
  • 他们通常更加用户友好,
  • 他们可以 1 更容易处理已移动的文件集合。

但缺点是相对路径(至少在带有File对象的Java中)相对于JVM的当前目录已解析。在很多情况下,用户和/或开发人员的想法都存在不确定性。如果它不是你所期望的,那么解决错误的相对路径。


1 - 需要注意的是,您实际上是依赖于启动的的JVM以及相应的当前目录。 JVM启动后,无法更改其当前目录。或者至少,你不能用纯Java ... AFAIK。

答案 2 :(得分:0)

如果将项目移动到另一个系统,可能会遇到两种绝对路径问题:

  1. 资源可能位于文件系统中的不同位置
  2. 您可能正在使用不同的操作系统(例如Windows与Linux / Unix)。这些系统使用完全不同类型的路径描述符。