- 文件系統下對與 / \ " : | * ? < > 等字符會為文件名時導致Java創建文件夾或文件失敗,或者自動截斷第一個非法字符前的字符作為文件名。
通過正則表達式將字符串中包含的上述非法字符替換為空字符。
1 Pattern pattern = Pattern.compile("[\\s\\\\/:\\*\\?\\\"<>\\|]"); 2 Matcher matcher = pattern.matcher(fileName); 3 formatFileName= matcher.replaceAll("");
- 查看文件名是否合法的正則表達式
1 fileName.matches("[^\\s\\\\/:\\*\\?\\\"<>\\|](\\x20|[^\\s\\\\/:\\*\\?\\\"<>\\|])*[^\\s\\\\/:\\*\\?\\\"<>\\|\\.]$");