使用python从Windows中的“锁定”文件中读取

问题描述 投票:0回答:1

我编写了python脚本来处理另一个程序的输出文件,并在其上运行各种统计信息。现在,当我尝试从python脚本访问该文件时:

with open('C:\\my_file_path', 'rb') as outfile:
     print(outfile)

我收到错误消息:

[PermissionError:[Errno 13]权限被拒绝:'C:\ my_file_path'

[当使用其他程序(特别是HxD,十六进制编辑器)时,Windows会给出更详细的错误弹出窗口,指出:

该进程无法访问该文件,因为它正在被文件使用另一个过程。

以管理员身份运行程序或在WSL Ubuntu中使用sudo运行程序都没有任何区别。

尽管有这些锁定条件,是否有任何方法可以读取正在写入此文件的数据?我不能弄乱第一个程序,因为它是我没有源代码的低级设备驱动程序。它实际上记录了来自硬件传感器的数据并将其写入文件几个小时,因此能够用python同时解析该文件(而不是等到长达数小时的记录结束之后)会更好。

python windows file-permissions
1个回答
0
投票

您想要实现的目标可能是不必要的。如果可变资源上存在并发,将有锁和释放。

该进程无法访问该文件,因为它正在被另一个文件使用过程。

这是一个阻塞资源,您必须终止或进程释放它之后才能强制授予它。

关于此

[PermissionError:[Errno 13]权限被拒绝:'C:\ my_file_path'

这是一个权限问题,您的文件需要与正在运行代码的用户拥有权限。修改对同一用户和组的权限。

© www.soinside.com 2019 - 2024. All rights reserved.