在对字符串进行文件路径分割时, 如下代码报异常:
String[] ss = tmpath.split(File.separator); // 异常
//String[] ss = tmpath.split("\\"); // 异常
//String[] ss = tmpath.split("\\\\"); // 正常
//String[] ss = tmpath.split(Matcher.quoteReplacement(File.separator)); // 正常
出现的异常如下:
nested exception is java.util.regex.PatternSyntaxException: Unexpected internal error near index 1
\
^
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:982)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:866)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:851)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
这是因为,''和''符号,会造成混淆。
推荐使用 : tmpath.split(Matcher.quoteReplacement(File.separator))
网友评论