java 在windows和linux系统下的字符串路径根据斜杠截取的问题
在windows操作系统中,文件路径的分隔符是:"\\ ",在linux操作系统中,文件路径的分隔符是:"/"。注意:windows路径通常使用反斜杠,但是也支持正斜杠。但是注册表中的路径应该用反斜杠,不能用正斜杠。例如,windows开机启动项如果使用正斜杠表示路径,则会出现不能启动的问题。根据路径斜杠截取:windows 路径是:"\\ &q
·
在windows操作系统中,文件路径的分隔符是:"\\ ",在linux操作系统中,文件路径的分隔符是:"/"。
注意:
windows路径通常使用反斜杠,但是也支持正斜杠。但是注册表中的路径应该用反斜杠,不能用正斜杠。
例如,windows开机启动项如果使用正斜杠表示路径,则会出现不能启动的问题。
根据路径斜杠截取:windows 路径是:"\\ ",替换为"/",linux是正斜杠"/"。
String filePath=filePath.replace("\\", "/");
filePath =filePath.substring(0,filePath.lastIndexOf("/"))+File.separatorChar+"厂站设备统计.txt";
--------------------------------------------------------------------------我是分隔线------------------------------------------------------------------------------
字符串分隔
String path= “E:\\dds\\fdfs\\doc.c”, path.split("\\") 编译通过,但是结果出错,如下所示:
public static void main(String[] args) {
String path= "E:\\dds\\fdfs\\doc.c";
String temp[] = path.split("\\");
System.out.println(temp);
}
正确方法 :path.split("\\\\");
原因如下:
java需要调用正则,java和正则都需要转义,即两层转义:当碰见特殊字符\,^,'','等需要进行转义。
因为在java中\\表示一个\,而regex中\\也表示\,所以java的\\\\表示为regex的\\,即实际的一个\。
String temp[] = path.split("\\\\");
更多推荐
已为社区贡献1条内容
所有评论(0)