Tom*_*and 8 java cross-platform filepath
我正处于我正在进行的项目的重构阶段,并希望对我如何构建和表示文件系统路径进行一些改进.在Java代码中表示相对路径以确保Ubuntu,OSX和Windows 7的兼容性时,我应该考虑哪些事项.
目前要获取文件引用"MyProject/foo/bar.f"的实例,我将得到以下代码:
File bar = new File(ProjectDirectory + "/" + FooResourceDirectory + "/" + barName);
由于几个原因,这似乎是错误的,有哪些最佳实践?
小智 12
也许使用提供的构造函数来执行此类操作:
new File(parent, child)
Run Code Online (Sandbox Code Playgroud)
你必须"嵌套"它们,但处理这个问题是微不足道的(例如,创建一个函数来获取从某些东西中构建的路径string....)
请参见文件构造函数.
首先,你应该使用 File.separator
而不是"/".File.pathSeparator