标签: delete-file

检测打开文件上的文件删除

我正在打开一个具有读取访问权限的文件,并允许对该文件进行后续的读|写|删除文件共享访问(尾随该文件)。如果文件在处理过程中被删除,是否有办法检测该文件是否正在等待删除(请参阅文件部分http://msdn.microsoft.com/en-us/library/aa363858(v=VS.85).aspx) ?如果某个外部进程(拥有进程)发出了删除,我想尽快关闭我的句柄以允许文件删除,以免干扰拥有进程中的任何逻辑。

我在 C# 中,看不到检测挂起删除的方法。该文件是使用 FileStream 对象打开的。是否有某种方法可以检测 C# 或其他 Windows 函数中的删除?

c# windows file-io tail delete-file

5
推荐指数
1
解决办法
2996
查看次数

Linux 中可用于删除文件的系统调用

Linux 上可以使用哪些系统调用来删除文件?我指的不仅仅是 libc-wrapper 使用的系统调用(它又由命令行工具使用)。

除了unlink以及unlinkat哪些系统调用可用于删除 Linux 计算机上的文件?

linux system-calls file-handling unlink delete-file

5
推荐指数
1
解决办法
5029
查看次数

如何从 Android 5 的外部存储中删除文件

我用了

File f=new File(MyPath);
f.delete();
Run Code Online (Sandbox Code Playgroud)

我使用了权限WRITE_EXTERNAL_STORAGEREAD_EXTERNAL_STORAGE,但它在 Android 5 中不起作用。

Logcat 消息:

java.io.FileNotFoundException: storage/external_SD/mm.txt: open failed: EACCES (Permission denied)  
Run Code Online (Sandbox Code Playgroud)

清单文件:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.mahestan_programming.myapplication">

    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>
Run Code Online (Sandbox Code Playgroud)

自版本 4.4 起,我们无法从 MICRO SD 卡删除和写入文件。现在它是只读的。

android delete-file android-permissions android-external-storage

5
推荐指数
1
解决办法
5478
查看次数

C++ 我应该在删除文件之前检查文件是否存在吗?

很简单,我想删除一个可能存在也可能不存在的文件。仅使用remove(filename)并忽略返回值是不好的做法吗?

编辑:通过删除,我指的是这个

c c++ file delete-file

5
推荐指数
1
解决办法
5895
查看次数

如何正确删除文件?

我在使用 org.apache.commons.io.FileUtils 从 img 目录中删除文件时遇到问题。我正在使用此代码:

File dir = new File(".\\img");
    FileFilter fileFilter = new WildcardFileFilter(userId + ".*");
    File[] files = dir.listFiles(fileFilter);
    System.out.println("files found: " + files.length);
    for (int i = 0; i < files.length; i++) {
        boolean success = FileUtils.deleteQuietly(files[i]);
        System.out.println(files[i] + " delete result = " + success);
    }
}
Run Code Online (Sandbox Code Playgroud)

实际上,该代码用于用新的图像文件替换 img 目录中存在的图像文件。我需要删除所有以前存在的名称为 n.* 的文件,并使用新文件 egnpng。如果我尝试删除图像文件,我会得到变量成功的假值,并且文件不会被删除。但不是图像文件,例如 *.abc;*.acd; *.acdc 等被成功删除。这个问题是什么情况?

java delete-file

5
推荐指数
1
解决办法
1844
查看次数

如何保证文件在一段时间后自动删除?

用户上传图像后,我必须将图像存储几分钟,直到用户确认并将其存储在数据库中

所以我想创建一个临时文件并用它来显示预览。

但我必须确保,如果用户不再交互,该文件将在一段时间后被删除

我发现这篇关于临时文件以及如何自动删除它们的文章https://softwarecave.org/2014/02/05/create-temporary-files-and-directories-using-java-nio2/

但如果我理解正确的话,deleteOnExit 和 ShutdownHook 将在虚拟机关闭后调用,所以如果我的应用程序长时间保持在线,谢谢,这些文件永远不会被删除,并且当我调用 close 方法时 DELETE_ON_EXIT 选项将删除文件,所以如果我从不调用由于用户不执行任何操作,因此该文件也永远不会被删除。这是正确的?

那么..有什么方法可以保证文件在一段时间后自动删除吗?

我正在考虑使用 deleteOnExit 和 DELETE_ON_CLOSE 选项创建一个文件,并添加到具有“超时”的线程,并在超时后检查文件是否仍然存在并删除,但我不知道是否存在最佳方法。

谢谢

更新

根据最佳答案,我开发了一个项目,java.util.File在 Kotlin 中写入时添加此行为。

https://github.com/vinicius-rob-cunha/kotlin-auto-delete-file

java temporary-files delete-file

5
推荐指数
1
解决办法
5668
查看次数

如何删除 PowerShell 说不存在的文件?

我将我的 Google Drive 添加到我的 OneDrive 并在其中包含一个包含无效名称 (con.mp3) 的文件。当我尝试删除文件(及其所在的目录)时,我收到“无效的文件句柄”。所以我尝试以管理员身份使用 PowerShell 删除它。

下面是目录列表显示的文件,结果Remove-Itemdel

PS> dir

    Directory: C:\Users\Patrick\OneDrive\Google Drive\CW\CW.15WPM.VeryShortWords


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        1/13/2018  11:49 AM         117069 con.mp3


PS> Remove-Item * -Force
Remove-Item : An object at the specified path C:\Users\Patrick\OneDrive\Google
Drive\CW\CW.15WPM.VeryShortWords\con.mp3 does not exist.
At line:1 char:1
+ Remove-Item * -Force
+ ~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [Remove-Item], PSArgumentException
    + FullyQualifiedErrorId : Argument,Microsoft.PowerShell.Commands.RemoveItemCommand

PS> del *.*
del : An object at the …
Run Code Online (Sandbox Code Playgroud)

powershell delete-file

5
推荐指数
1
解决办法
6371
查看次数

将 .XLSX 转换为 Google Sheet 并移动转换后的文件的脚本

我知道可以使用脚本和驱动 API 将 Excel 文件转换为 Google Sheets,但我正在寻找脚本来转换 Excel 工作表并将转换后的文件移动到其他文件夹。

所以需要的步骤如下:

  1. 将 Excel (.xls/.xlsx) 从文件夹 A 转换为 Google 表格。
  2. 将转换后的文件从 FoldarA 移动到 FolderB。
  3. 从FolderA中删除原始Excel文件
  4. 希望步骤 3 可以避免这种情况,但要避免复制已转换的文件。

Excel 文件正在粘贴到正在同步到 Google Drive 的本地文件夹中,并且文件不大于 3mb。当前脚本如下。这是转换文件,但将它们放置在根文件夹中,并且当脚本再次运行时将重复转换。

 function importXLS(){
  var files = DriveApp.getFolderById('1hjvNIPgKhp2ZKIC7K2kxvJjfIeEYw4BP').searchFiles('title != "nothing"');
  while(files.hasNext()){
    var xFile = files.next();
    var name = xFile.getName();
    if (name.indexOf('.xlsx')>-1){ 
      var ID = xFile.getId();
      var xBlob = xFile.getBlob();
      var newFile = { title : name+'_converted',
                     key : ID
                    }
      file = Drive.Files.insert(newFile, xBlob, {
        convert: true
      });
    }
  } …
Run Code Online (Sandbox Code Playgroud)

file-conversion google-sheets delete-file google-apps-script google-drive-api

5
推荐指数
1
解决办法
2万
查看次数

如何使用 CodePipeline 删除 S3 中的文件

我创建了一个 CodePipeline,它从 CodeCommit 存储库获取输入(文件)并将文件部署到 S3 存储桶。当我删除 CodeCommit 存储库中的文件时,管道不会删除相应 S3 存储桶中的文件。简而言之,我希望我的 S3 存储桶与 CodeCommit 存储库同步。我怎样才能实现这个目标?

我的管道没有 CodeBuild 阶段。

AWS-CodeCommit --> CodePipeline --> 部署到跨账户-S3

amazon-s3 amazon-web-services delete-file aws-codecommit aws-codepipeline

5
推荐指数
1
解决办法
3369
查看次数

PowerShell脚本从列表中删除文件并删除已删除文件的列表

我有一个文件列表,包括它们在.txt中的位置,如下所示:

\ SERVER01\backupsFolder\xx\a\ss.bak
\SERVER01\backupsFolder\xx\a\ss.bak
\SERVER02\backupsFolder\yy\b\dd.bak
\SERVER02\backupsFolder\yy\b\dd.bak

如何从"backupsFolder"文件夹中以递归方式删除其他所有内容,并输出所有已删除的文件?

powershell file list delete-file

4
推荐指数
1
解决办法
2万
查看次数