python – 使用mmap增加文件的大小
发布时间:2020-12-16 21:52:19 所属栏目:Python 来源:网络整理
导读:在Windows上的Python中,我可以创建一个大文件 from mmap import mmap f = open('big.file','w') f.close() f = open('big.file','r+') m = mmap(f.fileno(),10**9) 现在big.file是(约)1千兆字节.但是,在Linux上,这将返回ValueError:mmap length大于文件大小
在Windows上的Python中,我可以创建一个大文件
现在big.file是(约)1千兆字节.但是,在Linux上,这将返回ValueError:mmap length大于文件大小. 有没有办法在Linux上获得与Windows相同的行为?也就是说,为了能够使用mmap增加文件的大小? 最佳答案
至少在POSIX系统上,mmap()不能用于增加(或减少)文件的大小. mmap()的功能是将内存映射到文件的一部分.你请求映射的东西实际上应该存在是合乎逻辑的!坦率地说,我真的很惊讶你实际上可以在MS Windows下做到这一点.
如果你想增长一个文件,只需在你mmap()之前ftruncate()它. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |