Java如何将文件删除到回收站呢?
下文笔者讲述使用java代码将文件删除到回收站的方法分享,如下所示
文件删除到回收站
方式1: 使用jna包中的方法 方式2: java9及以上可使用Desktop.class完成文件移动到回收站例1:jna删除文件
//1.引入jar包 <dependency> <groupId>net.java.dev.jna</groupId> <artifactId>jna-platform</artifactId> <version>4.0.0</version> </dependency> //2.代码实现文件移动至回收站 /* * 将文件放到回收站 * @attention: 不管路径有没有路径分隔符,都将视作没有处理,例如: * C:\Users\java265\Desktop\test * C:\Users\java265\Desktop\test\ * 删除"test" 整个文件夹 * @param: filePath 文件绝对路径 * @return: boolean 成功/失败 */ public static boolean moveFileToTrash(String filePath) { if (filePath == null || filePath.isEmpty()) { log.info("filePath shouldn't be null (or) empty"); return true; } File file = new File(filePath); if (!file.exists()) { log.info("File is not exist, seems to be it is already deleted"); return true; } com.sun.jna.platform.FileUtils fileUtils = com.sun.jna.platform.FileUtils.getInstance(); // 检测当前系统没有回收站的话,进行提醒 if (!fileUtils.hasTrash()) { log.error("No Trash available"); return false; } // 有回收站就会将文件放到回收站中 try { fileUtils.moveToTrash(new File[] { new File(filePath) }); log.info("文件/文件夹已被放入回收站"); return true; } catch (IOException e) { log.error("Error while moving the file to trash " + e.getMessage()); return false; } }例2:使用java9中的新方法
Desktop.getDesktop().moveToTrash(file);
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。