当前位置: 首页 > 面试题库 >

Java是否可以删除到回收站?

颛孙霖
2023-03-14
问题内容

Java 是这里的关键。我需要能够删除文件,但是用户希望能够从回收站中“取消删除”。据我所知这是不可能的。有人知道吗?


问题答案:

由于各种原因,Windows
没有简单地对应于回收站的文件夹的概念。

正确的方法是使用JNI调用Windows
SHFileOperationAPI,FO_DELETE并在SHFILEOPSTRUCT结构中设置标志。

  • SHFileOperation文档
  • 使用SHFileOperation复制文件的Java示例(同一文章中的“回收站”链接不起作用)


 类似资料:
  • 1、引用计数算法 (1)判断对象的引用数量 通过判断对象的引用数量来决定对象是否可以被回收; 每个对象实例都有一个引用计数器,被引用+1,完成引用-1; 任何引用计数为0的对象实例可以被当做垃圾回收; (2)优缺点 优点:执行效率高,程序受影响较小; 缺点:无法检测出循环引用的情况,导致内存泄漏; 2、可达性分析算法 通过判断对象的引用链是否可达来决定对象是否可以被回收。 如果程序无法再引用该对象

  • 在Pyspark中执行映射函数时,我经常希望删除映射函数失败的数据(在本例中,转换为xml)。我想知道在映射步骤中是否有一个干净的方法来实现这一点? 返回blank的明显解决方案仍然会在RDD中保留一个对象。 创建一个聪明的筛选器是浪费我的时间,而像try/except on这样的哑筛选器是浪费计算时间,因为我会对XML进行两次解析。

  • 本文向大家介绍怎么判断对象是否可以被回收?相关面试题,主要包含被问及怎么判断对象是否可以被回收?时的应答技巧和注意事项,需要的朋友参考一下 一般有两种方法来判断: 引用计数器:为每个对象创建一个引用计数,有对象引用时计数器 +1,引用被释放时计数 -1,当计数器为 0 时就可以被回收。它有一个缺点不能解决循环引用的问题; 可达性分析:从 GC Roots 开始向下搜索,搜索所走过的路径称为引用链。

  • 我在服务器中执行docker()清洁命令: 令我惊讶的是,这个命令删除了停止的容器。这就是问题所在,有些容器因为某种原因停止了,但我仍然想在未来使用它。现在它被删除了,有没有可能恢复错误删除的停止的容器?

  • 我有一个安装了Fabric Crashytics的android应用程序。我已经按照Firebase的官方指南从Fabric迁移到Firebase,迁移工作正常,并且我看到了Fabric和Firebase控制台中的所有报告。 问题是,如果我想从manifest.xml中删除Fabric apikey,因为我不想看到Fabric崩溃,只想看到Firebase控制台崩溃。如果我删除了apikey,那么

  • 本文向大家介绍dotnet如何将文件删除到回收站,包括了dotnet如何将文件删除到回收站的使用技巧和注意事项,需要的朋友参考一下 前言 默认删除文件的时候 File.Delete 是将文件永久删除,如果是一些文档,建议删除到回收站,这样用户可以自己还原 通过 SHFileOperation 可以将文件放在回收站 本文提供的方法暂时只能在 x86 程序使用,此方法暂时不适合 dotnet core