我希望能够重命名文件夹列表,以便删除不需要的字符(例如,点和双空格必须变成单个空格)。
单击 GUI 中的按钮后,您将看到一个带有正确格式名称的消息框,这表明格式正确并且函数被调用。
当我查看我创建的测试文件夹时,名称没有更改(即使刷新后也没有更改)。使用硬编码字符串也不起作用。
我在忽略什么?
public void cleanFormat() {
for (int i = 0; i < directories.size(); i++) {
File currentDirectory = directories.get(i);
for (File currentFile : currentDirectory.listFiles()) {
String formattedName = "";
formattedName = currentFile.getName().replace(".", " ");
formattedName = formattedName.replace(" ", " ");
currentFile.renameTo(new File(formattedName));
JOptionPane.showMessageDialog(null, formattedName);
}
}
}
对于未来的浏览器:Assylias 的评论已修复此问题。下面您将找到修复该问题的最终代码。
public void cleanFormat() {
for (int i = 0; i < directories.size(); i++) {
File currentDirectory = directories.get(i);
for (File currentFile : currentDirectory.listFiles()) {
String formattedName = "";
formattedName = currentFile.getName().replace(".", " ");
formattedName = formattedName.replace(" ", " ");
Path source = currentFile.toPath();
try {
Files.move(source, source.resolveSibling(formattedName));
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)