我需要在java程序中构建一个文件路径。我应该使用哪个路径分隔符 允许我的程序在Windows和Unix上运行吗?
请记住,Windows需要驱动器号。
答案 0 :(得分:2)
使用System.getProperty("file.separator")
。
答案 1 :(得分:2)
您可以使用Java的File.separator
来实现系统独立性。
separator
是File类的static String
成员。
编辑 - 获取操作系统信息
如果你只想看到你应该添加C:
,请查看this example以获取操作系统信息,然后解析操作系统字符串并查看它是否是MS Windows。
您可能还会发现问题1298310对于获取所有驱动器信息非常有用。
答案 2 :(得分:2)
使用File.separator
与平台无关,尽管正斜杠/
适用于Windows和unix。
此外,我建议您避免使用File.separator
。如果要在文件夹中创建文件,请执行以下操作:
File dir = new File("myfolder"); // no slashes
File file = new File(dir, "myfile.txt"); // no slashes.
使用File.listRoots()
获取Windows上的所有驱动程序字母或Unix上的单个文件根/
。
答案 3 :(得分:0)
使用File.separator
构建文件路径。
答案 4 :(得分:0)
你应该使用java.io.File.separator - > http://docs.oracle.com/javase/1.4.2/docs/api/java/io/File.html#separator
答案 5 :(得分:0)
将File.seperator用于任何操作系统的分隔符。