gpt4 book ai didi

Java重命名旧目录或删除它以创建新目录

转载 作者:行者123 更新时间:2023-11-30 04:37:21 25 4
gpt4 key购买 nike

我正在处理的面板存在问题,我正在处理的是,每当从一个版本的软件升级到另一个版本时,Windows 计算机上的旧开始菜单组仍然显示。我尝试看看是否可以先删除旧目录,然后创建新目录,但所发生的只是旧目录仍然保留。不太确定如何去做,我所需要的只是开始菜单组中的一个目录来显示我删除或重命名旧目录的天气。

这是迄今为止我删除旧系统变量的内容。这是我正在研究的事情,我知道它并不完美,但任何帮助将不胜感激。如果您需要解释,我很乐意遵守。谢谢

 if ( PrioGlobals.UPGRADE ){
oldm_txtGrpName.setText(PrioGlobals.StartMenuFolder);
}

if ( PrioGlobals.UPGRADE ){
String oldShortCutPath = PrioGlobals.cre.getShorcutDirectory();
String oldStartMenuGroupFolderPath = oldShortCutPath + File.separator + BrandStrings.WIN_FOLDER_NAME +
File.separator +oldm_txtGrpName.getText();

File oldStartmenu = new File(oldStartMenuGroupFolderPath);
if (oldStartmenu.exists())
{
oldStartmenu.delete();
}
else
oldStartmenu.delete();
}

最佳答案

如果我正确地阅读了您的代码,oldStartmenu 是一个目录吗?在这种情况下,oldStartmenu.delete() 可能会失败,因为该目录不为空(请参阅 File delete )在这种情况下,您需要递归删除该目录及其所有文件。

此时我建议包括 commons-io FileUtils并使用目录实用程序之一,例如 forceDeletedeleteDirectory

[更新]

将 commons-io 库添加到项目后,您将

// import FileUtils
import org.apache.commons.io.FileUtils;

// ...

if (oldStartmenu.exists())
{
FileUtils.deleteDirectory(oldStartmenu);
}

关于Java重命名旧目录或删除它以创建新目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13166664/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com