我知道。异端。但我陷入困境。我有很多使用绝对路径名的配置文件,这会在OS X和Windows之间产生不兼容性。如果我能够将OS X(我认为两者中的灵活性更灵活)识别为“Q:/foo/bar/bim.properties”作为有效的绝对文件名,那么它将节省我天通过堆栈跟踪和配置文件进行工作。
最后,我需要这些Java测试代码来打印“SUCCESS!”当它运行时:
import java.io.*; class DriveLetterTest { static public void main(String... args) { File f = new File("S:"); if (f.isDirectory()) { System.out.println("SUCCESS!"); } else { System.out.println("FAIL!"); } } }
任何人都知道如何做到这一点?
答案 0 :(得分:0)
如果您不愿意更改每个操作系统的配置文件,那么它们首先适用于什么?
每个安装都应该有自己的一组配置文件并相应地使用它。
但如果你坚持......你只需要检测操作系统版本,如果不是Windows,请忽略这封信:
有些事情:
boolean isWindows = System.getProperty("os.name")
.toLowerCase().contains("windows");
String folder = "S:";
if( isWindows && folder.matches("\\w:") {
folder = "/";
} else if( isWindows && folder.matches("\\w:.+)) {
folder = folder.substring(2);// ignoring the first two letters S:
}
你明白了