我需要重命名数据库中的一些路径 我重命名文件夹:
String mainFolder= "D:\test\1\data"; //folder renamed from fd
然后我需要重命名该文件夹中的所有文件和目录:
String file1="D:\test\1\fd\dr.jpg";
String folder1="D:\test\1\fd\fd"; // in this case last fd needs to be renamed
String folder2="src/fd/fd/"; //fake path also needs to be renamed
重命名字符串的最佳和最快方法是什么?
我对" /
":
String folder2= "src/da/da";
String[] splittedFakePath = folder2.split("/");
splittedFakePath[splittedFakePath.length - 2] = "data";
StringBuffer newFakePath = new StringBuffer();
for (String str : splittedFakePath) {
newFakePath.append(str).append("/");
}
重命名后的字符串:src/data/da/
但是当我试图通过" \
":
Arrays.toString(Pattern.compile(File.separator).split(folder1));
我收到:
java.util.regex.PatternSyntaxException: Unexpected internal error near index 1
\
^
答案 0 :(得分:0)
查看java的String
replace(...)
方法。
更换字符串非常棒,比试用正则表达式要好得多。
请记住,真正的目录处理有一些特殊情况,它们不适合直接字符串操作。例如,'//'经常在Unix系统中被压缩为'/',如果你关心正确的目录转角情况,那么使用Java Path
类