是否有任何特殊字符不能成为 Windows 或 Unix 中路径的一部分,我可以将其用作分隔符?
问问题
49175 次
6 回答
65
PATH 环境变量的分隔符呢?; 对于 Windows,和:对于 Linux。
于 2010-02-09T09:37:28.143 回答
8
维基百科很有帮助地列出了不同文件系统的保留字符。NTFS 和 POSIX 都不接受文件名中的空字符或斜杠 (/) 字符。斜杠字符显然不是一个好的分隔符,因为它在 POSIX 路径中很常见,所以也许你可以使用 null。
当然 null 并不适合所有情况(例如,打印时通常不可见),在这种情况下,您可能必须使用某种转义方案。
旨在跨不同平台工作的 Java 甚至不尝试找到通用的路径分隔符。相反,每个平台都有自己的特点,可以通过API访问。
于 2010-02-09T09:33:25.110 回答
6
path separator are platform dependent :
For windows, it’s ‘\’ and for unix it’s ‘/’.
于 2014-07-16T06:52:58.763 回答
3
从技术上讲,Unix 确实允许文件夹/文件名中的任何字符,/
当然,除非将其解释为路径的一部分。Windows 仅支持可打印字符和一些特殊字符,不包括\ / : * ? " < > |
.
于 2010-02-09T09:27:24.840 回答
0
在java中你可以使用:
WindowsNTFileSystem
s.split(File.pathSeparator) for windows it will give ; (semicolon)
s.split(File.separator) for windows it will give \ (backward)
Linux
s.split(File.pathSeparator) for windows it will give : (colon)
s.split(File.separator) for windows it will give / (forward)
于 2020-08-26T06:05:29.607 回答
-1
我会小心使用自定义分隔符,因为它们将来可能会中断,例如,如果有人使用 unicode 并且您的自定义分隔符是另一个字符的一部分。
于 2010-02-09T09:31:14.550 回答