允许读写iff块的替换块类。

chunk2的Python项目详细描述


iff块,如 EA IFF 85 标准,由4字节id字段、4字节长度字段组成, 以及块的数据内容,并可选地后跟 单个填充null字节(如果需要)以生成总数 偶数字节。

Chunk ID4 bytes
Length4 bytes
Datan bytes
Padding0 or 1 byte
  • 块ID是一个4个字符的字符串,用于标识类型 大块的。
  • 长度是一个4字节的整数(通常采用大端格式) 指示数据字段的长度。

chunk类允许从类似于 对象或创建块并将其写入类似文件的对象, 但不是两者都有。

对于读取,chunk类从文件中读取单个chunk,如 对象,然后是一个只读的类似文件的对象,用于读取 块的内容。

chunk尝试确定是否可以看到类似于基础文件的对象 通过tell操作;如果不引发异常, 然后,由chunk呈现的类文件对象本身是可查看的。

当块被关闭时,底层的类文件对象被定位 要在块之后立即读取(在填充字节之后, 如果有的话)。

对于写入,chunk类提供一个write only类文件对象 用于创建块的内容以及setname 分配块ID的方法。

对于其基础文件类对象不可查看的可写块, 创建内存中的文件对象以保存块的数据;仅 当块关闭时,内存中的文件对象将刷新到 基本的类文件对象。

iff文件可以由多个顶级块组成;“container” 区块类型(FORMCAT ``, and ``LIST)包含其他区块。 chunk类被设计为多次实例化,一次 在另一个之后,用于从 或文件,或“容器”块的内容。

parse_chunkparse_iff_filehelper方法有助于 通过自动解析容器块来读取iff文件。 parse_iff_file返回由 块名称和块内容;对于容器块,块 内容本身就是块元组的列表。


待办事项

  • 如果可能,从头重写以删除原始的python代码
  • 如果可能,修改为同时使用python 2和python 3

许可证

从Python2.7库复制原始代码基,然后修改 以支持写功能。

原始chunk.py版权所有(c)2001、2002、2003、2004, 2005年、2006年、2007年、2008年、2009年、2010年、2011年、2012年、2013年、2014年、2015年, 2016、2017 python软件基金会;保留所有权利;授权 在python软件基础许可版本2下 <;https://docs.python.org/2.7/license.html>;

衍生部分版权所有(c)2017 Johnson Earls;所有权利 保留;许可如下:

允许任何人使用、复制、修改和/或分发本软件 特此授予收费或不收费的目的,前提是 版权声明和本许可声明出现在所有副本中。

软件按“原样”提供,作者不作任何保证 关于本软件,包括 适销性和适用性。在任何情况下,作者都不承担责任 任何特殊的、直接的、间接的或间接的损害或任何损害 任何由于使用、数据或利润损失而导致的,无论是 因下列原因引起的合同诉讼、疏忽或其他侵权诉讼 或与本软件的使用或性能有关。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java JavaBridge errno=10054被Remotehost关闭   javafx如何在每次调用方法中的变量时更新它?(爪哇)   java mod_群集在发现后未平衡负载   Java软件编辑器/语法高亮   java为什么不能强制转换数组的结果。asList()到ArrayList?   java HIBERNATE:无法使用HIBERNATE从MySQL中提取数据   java在Google地图片段上添加布局   java在AbstractTableModel中执行setValueAt之前,我如何做一些事情?   java在整个Tomcat运行时保存变量   java如何在Thymeleaf模板中获取环境变量的值?   java Selenium Chrome驱动程序针对属性的标签   java正则表达式捕获未知数量的重复组