5.10 内存映射的二进制文件.pdfVIP

  • 10
  • 0
  • 约2.24千字
  • 约 3页
  • 2017-08-29 发布于浙江
  • 举报
5.10 内存映射的二进制文件

5.10 内存映射的⼆进制⽂件 问题 你想内存映射⼀个⼆进制⽂件到⼀个可变字节数组中,⽬的可能是为了随机访 它的 内容或者是原地做些修改。 解决⽅案 使⽤ mmap 模块来内存映射⽂件。下⾯是⼀个⼯具函数,向你演⽰了如何打开⼀个⽂ 件并以⼀种便捷⽅式内存映射这个⽂件。 import os import mmap def memory_map(filename, access=mmap.ACCESS_WRITE): si e = os.path.getsi e(filename) fd = os.open(filename, os.O_RDWR) return mmap.mmap(fd, si e, access=access) 为了使⽤这个函数,你需要有⼀个已创建并且内容不为空的⽂件。下⾯是⼀个例⼦, 教你怎样初始创建⼀个⽂件并将其内容扩充到指定⼤⼩: si e = 1000000 with open(data, wb) as f: ... f.seek(si e-1) ... f.write(b\x00) ... 下⾯是⼀个利⽤ memory_map() 函数类内存映射⽂件内容的例⼦: m = memory_map(data) le

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档