Python在Windows 7读取文件提前停止

3 投票
1 回答
630 浏览
提问于 2025-04-16 20:07

我正在用Python打开电脑里的物理磁盘,想读取第一个扇区。

disk = r"\\.\PhysicalDrive0"
with open(disk, 'r') as f:
        f.seek(0)
        partdata = f.read(512)
len(partdata)

在Windows XP系统中,len(partdata)会返回512,并且内容是正确的。而在Windows 7系统中,len(partdata)返回230,数据是正确的,但到这里就断了。

另外,尝试在磁盘上读取更远的地方也不行,只能返回前面的230个字节。

我使用的是Python版本2.7.1和2.7.2,分别有32位和64位的版本。

在Windows 7上,有一台是32位的机器,还有一台是64位的。

1 个回答

7

试着以二进制模式打开

with open(disk, 'rb') as f:

撰写回答