我已经能够使用以下代码永久删除文件:
var DeleteFromDir = new DirectoryInfo(sFromPath);
var files = DeleteFromDir.GetFiles(".txt");
foreach(var file in files)
{
if(bDeletePermanently)
file.Delete();
else
; //Move to recycle bin
}
Run Code Online (Sandbox Code Playgroud)
我在下面试过:
添加对 Microsoft.VisualBasic 程序集的引用。在这个库中可以找到所需的类。
使用 Microsoft.VisualBasic.FileIO 将此 using 语句添加到文件的顶部;
使用 FileSystem.DeleteFile 删除文件,它可以选择是否指定回收站。
但这仅适用于 UI 上下文,而我的应用程序是基于控制台的。
小智 0
如果您有对 Microsoft.VisualBasic 程序集的引用(如果您愿意,还有一个 NuGet 包),那么您应该能够使用下面的代码。
var DeleteFromDir = new DirectoryInfo(sFromPath);
var files = DeleteFromDir.GetFiles("*.txt");
foreach (var file in files)
{
if (bDeletePermanently)
{
file.Delete();
}
else
{
FileSystem.DeleteFile(file.FullName, UIOption.OnlyErrorDialogs, RecycleOption.SendToRecycleBin);
}
}
Run Code Online (Sandbox Code Playgroud)
为了回应您对 UI 上下文的担忧,该功能将仅“显示错误对话框并隐藏进度对话框”。如果您想进一步阅读,我在Microsoft 文档中找到了这一点。
| 归档时间: |
|
| 查看次数: |
575 次 |
| 最近记录: |