使用shutil.move

时间:2019-10-28 02:38:18

标签: python

我正在尝试编写一个python代码,该代码将监视特定文件夹中的任何事件“修改”,然后将行从源csv文件复制到目标csv文件。我在Windows上使用Python 3.8

复制行后,我想将源文件移动到存档文件夹,这就是我收到“ Win32权限错误”的情况

任何人都可以帮忙吗?

类Handler(FileSystemEventHandler):

@staticmethod
def on_any_event(event):
    if event.is_directory:
        return None

    elif event.event_type == 'modified':
        # Take any action here when a file is place in the Watch Folder.
        nsrc_file = event.src_path
        dst_file = "C:\\Users\\paramm\\Documents\\Python\\WB_output\\OE_2019.csv"
        archive_folder = "C:\\Users\\paramm\\Documents\\Python\\WB_archive"

        with open(nsrc_file, "r") as f_input, open(dst_file, "a", newline='') as f_output:
            csv_input = csv.reader(f_input)

            for row in csv_input:
                csv.writer(f_output).writerows(csv_input)

            shutil.move(nsrc_file, archive_folder)

错误: PermissionError:[WinError 32]该进程无法访问文件,因为该文件正在被另一个进程使用:

0 个答案:

没有答案