下面的 Java 代码适用于 Windows 机器filepath = "euro\football\france\winners.txt";String[] values = StringUtils.split(filePath, "\\");if (values != null && values.length >= 4) {} else { //error}但是在执行代码时在 linux 中面临问题。if 循环没有执行,else 循环正在执行。我们是否需要为 linux 将 split 指定为“\”或“/”String[] values = StringUtils.split(filePath, "\\");任何建议都会有所帮助
2 回答
神不在的星期二
TA贡献1963条经验 获得超6个赞
为避免这种情况,我将使用简单的正则表达式[/\\],它将与/或分开\,如下所示:
String[] filePaths = {
"euro/football/france/winners.txt", //linux path
"euro\\football\\france\\winners.txt" //windows path
};
for (String filePath : filePaths) {
String[] values = filePath.split("[/\\\\]");
System.out.println(Arrays.toString(values));
}
输出
[euro, football, france, winners.txt]
[euro, football, france, winners.txt]
添加回答
举报
0/150
提交
取消