当前位置: 首页 > 知识库问答 >
问题:

将文件移动到回收站

温开畅
2023-03-14

我正在尝试使用shutil库将文件移动到回收站。下面是相关的代码行,但我得到了一个奇怪的错误。这两个文件都是本地文件,我可以访问电脑上的两个位置。为什么会发生此错误?因为我用的是Main。从F复制它:?

import shutil
# Path to folder where files should be trashed
dump_folder = r"C:\$Recycle.Bin\\"
file_name = "C:\\Storage\\\\statuti.docx"

# Move it to storage directory
shutil.move(file_name, dump_folder)

错误消息

F: \Python\Project\venv\Scripts\Python。exe“C:\Program Files\JetBrains\PyCharm Community Edition 2020.1\plugins\python ce\helpers\pydev\pydevd.py”--多过程--qt支持=自动--客户端127.0.0.1--端口54648--文件F:\python\Main。py已连接到pydev调试器(build 203.5981.165)回溯(最近一次调用):move os中的文件“C:\Users\User\AppData\Local\Programs\Python\Python38\lib\shutil.py”,第788行。rename(src,real\u dst)PermissionError:[WinError 5]访问被拒绝:“C:\Storage\\statuti。docx'-

在处理上述异常期间,发生了另一个异常:

回溯(最近的最后一次调用):文件“C:\Users\User\AppData\Local\Programs\Python\Python38\lib\shutil.py”,第261行,在copyfile中,open(src,“rb”)作为fsrc,open(dst,“wb”)作为fdst:OSError:[Errno 22]无效参数:“C:\Recycle”。银行标识代码\\'

共有3个答案

仲璞瑜
2023-03-14

我使用的是Windows 10,send2trash只接受带有反斜杠的路径。当您试图用正斜杠传递目录时,它抛出OSError:[WinError xxxxxxxxx]参数不正确。

此代码应将替换为,并修复错误:

path_to_delete = path_to_delete.replace("/", "\\")
send2trash(path_to_delete)
朱起运
2023-03-14

我建议您安装Send2Trash模块,它可以跨平台工作。您可以从PyPi获得:https://pypi.org/project/Send2Trash/

司空锋
2023-03-14

要将某物发送到回收站,使用send2trash要容易得多。它是跨平台的,非常容易使用。

您可以通过以下方式安装它:

pip install Send2Trash

然后您可以使用它:

from send2trash import send2trash
send2trash(filename)
 类似资料:
  • 在使用IMAP和PHP之前,我从未尝试过获取和移动电子邮件,因此将发送到垃圾箱的电子邮件移回收件箱。 好的,所以我可以正确地从Gmail中提取电子邮件,我可以删除它们,或者将它们移到垃圾箱。 当我尝试将它们移回收件箱时,我收到以下错误: 注意:未知:[TRYCREATE]第0行未知中没有文件夹[Gmail]/收件箱(失败)(errflg=2) 所以很明显,有些事情我不太明白,在过去的几个小时里,我

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

  • 有什么可以让我开始的指针或示例代码吗?

  • 我有一个包含10个图像的文件夹,我希望根据其当前文件名将其移动到一个新文件夹中。我已经成功地将文件夹中的每个图像移动到了一个新文件夹中,到目前为止,我已经成功地将每个图像文件名移动到了它自己的文件夹中,但我还没有弄清楚如何将具有相同文件名的所有图像移动到一个文件夹中,然后将另一个移动到另一个文件夹中。例如,下面我想相应地移动图像。 1600_01.jpg--- 到目前为止,这是我的代码,通过根据图

  • 我有一个文件夹,其中有一个。dat文件和一个是。zip文件,我必须移动。将文件压缩到另一个目录 我有两个文件夹,一个是 请建议如何实现这一点,我现在所做的是。。。

  • 将文件从documentdirectory移动到子目录的简单脚本不起作用 移动失败,错误为:操作无法完成。(可可错误4。) 我用Xcode的模拟器来尝试它。下面的函数返回true,因为文件存在于DocumentDirectory中。此外,destinationfolder存在,destinationfolder为空。 /Users/RWollenSchlaeger/Library/Develope