gpt4 book ai didi

python - 为什么 os.path.getsize() 对于 10gb 的文件返回负数?

转载 作者:IT王子 更新时间:2023-10-29 00:25:33 24 4
gpt4 key购买 nike

我正在使用函数 os.path.getsize() 以字节为单位给出文件的大小。

因为我的一个文件大小是 10gb,它给我的大小是负数(字节)。

所以谁能告诉我为什么会这样?

这是我的代码:

import os
ospathsize = os.path.getsize('/home/user/Desktop/test1.nrg')
print (ospathsize)

最佳答案

您的 Linux 内核显然支持大文件,因为 ls -l工作正常。因此,是您的 Python 安装缺少支持。 (您使用的是您的发行版的 Python 包吗?它是什么发行版?)

关于 POSIX large file support in Python 的文档指出 Python 通常应该使用大文件支持,如果它在 Linux 上可用的话。它还建议尝试使用命令行配置 Python

CFLAGS='-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64' OPT="-g -O2 $CFLAGS" \
./configure

最后,引用 man page of the stat system call :

This can occur when an application compiled on a 32-bit platform without -D_FILE_OFFSET_BITS=64 calls stat() on a file whose size exceeds (1<<31)-1 bits.

(我相信最后一个词应该是“bytes”。)

关于python - 为什么 os.path.getsize() 对于 10gb 的文件返回负数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5167120/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com