windows系统拼接的路径是反斜杠 \
,但是如果将项目部署到 linux系统上拼接的路径是正斜杠 /
;
在java代码中,存在转义字符的问题,这里先不赘述。
方式一(推荐):
使用java提供的方法,System.getProperty(“file.separator”)
能根据系统的不同获取文件路径的分隔符
String path = "D:"+System.getProperty("file.separator")+test;
//linux: D:/test
//windows:D:\test
方式二:
使用java自带的 System.getProperty("os.name").toLowerCase();
可以获得当前操作系统的名称;
String os = System.getProperty("os.name").toLowerCase();
System.out.println(os);
//windows 7
//linux
if (os.startsWith("win")) {
//根据对应系统变更路径
}else if((os.startsWith("lin")){
//根据对应系统变更路径
};
总结:
方式一针对只更换路径操作比较有优势;方式二在只变更路径的时过于繁琐,但是要是有更多操作时只能通过方式二;