Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使路径名与不同的操作系统兼容?_Java_Path_Relative Path - Fatal编程技术网

Java 如何使路径名与不同的操作系统兼容?

Java 如何使路径名与不同的操作系统兼容?,java,path,relative-path,Java,Path,Relative Path,我以前知道这一点,但我知道在java中有一种方法可以确保路径在所有操作系统中都有效(Windows使用的是与基于Unix的系统不同的“/”系统)。要创建适用于所有系统的文件路径名,我必须做什么 编辑:我不确定这是否是我的意思,但我认为文件路径最终将是相对的 另外,File.separator和File.pathSeparator有什么区别?您可以使用/(正斜杠)作为路径分隔符。这将跨平台工作。文件有一个为此,您必须使用文件.separator或文件.separatorChar。 查看文件类jav

我以前知道这一点,但我知道在java中有一种方法可以确保路径在所有操作系统中都有效(Windows使用的是与基于Unix的系统不同的“/”系统)。要创建适用于所有系统的文件路径名,我必须做什么

编辑:我不确定这是否是我的意思,但我认为文件路径最终将是相对的


另外,File.separator和File.pathSeparator有什么区别?

您可以使用
/
(正斜杠)作为路径分隔符。这将跨平台工作。

文件
有一个

为此,您必须使用
文件.separator
文件.separatorChar

查看
文件
类javadoc以了解更多信息

编辑:
separator
pathSeparator
之间的差异。第一个分隔文件路径中的文件夹,如
/usr/bin
中的
/
。第二个是
路径
环境变量中的分隔符,如
PATH=C:/windows/bin中;C:/anotherfolder

我以前用过这个,只是我不确定它是否受欢迎

System.getProperty("file.separator");

除非您使用的是旧mac;)@拜伦:没错。Java5或Java6是否真的运行在OS9-上?您指的是斜杠吗?Windows中的驱动器号与Linux中的驱动器号相比如何/Unix@Danish,可能OP只处理相对路径。这就是我要找的。谢谢File.separator和File.pathSeparator之间有什么区别?
File.separator
是分隔文件路径部分的字符,例如字符所在的
C:\dos
或字符所在的
/home/user
。pathSeparator是分隔部分的字符,根据代码运行的操作系统的不同,它也会有所不同。基本上,它要么是一个
你仍然可以从我这里得到一个好的答案:)现在,只要我能降价而不是一直逃避我的反斜杠反斜杠反斜杠反斜杠反斜杠反斜杠反斜杠反斜杠反斜杠反斜杠反斜杠反斜杠反斜杠反斜杠反斜杠反斜杠反斜杠反斜杠反斜杠反斜杠反斜杠!