当前位置: 首页>>代码示例>>Python>>正文


Python Reader.read_int方法代码示例

本文整理汇总了Python中reader.Reader.read_int方法的典型用法代码示例。如果您正苦于以下问题:Python Reader.read_int方法的具体用法?Python Reader.read_int怎么用?Python Reader.read_int使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在reader.Reader的用法示例。


在下文中一共展示了Reader.read_int方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: load

# 需要导入模块: from reader import Reader [as 别名]
# 或者: from reader.Reader import read_int [as 别名]
 def load(self):
     _path = path.join(self.root_dir, 'database', 'master_card')
     with open(_path, 'rb') as _f:
         buf = Reader(_f)
         count = buf.read_int()  # 卡牌数量
         offsets = [0] * count
         self.cards = cards = [None] * count
         for i in range(count):
             cards[i] = MACard()
             offsets[i] = buf.read_int()
         for i, card in enumerate(cards):
             buf.seek(offsets[i])
             card.load(buf)
开发者ID:skydark,项目名称:matools,代码行数:15,代码来源:card.py

示例2: __init__

# 需要导入模块: from reader import Reader [as 别名]
# 或者: from reader.Reader import read_int [as 别名]
class ClassParser:
    def __init__(self, file):
        self.file = file
        self.reader = Reader()

    def parse_class(self):
        clazz = JavaClass()
        self.reader.load_class(self.file)

        if self.reader.read_int() != 0xCAFEBABE:
            raise Exception('Not a valid Java class file')

        clazz.version['minor'] = self.reader.read_short()
        clazz.version['major'] = self.reader.read_short()

        pool = self.parse_constant_pool(clazz)
        clazz.pool = pool
        clazz.access_flags = pool.get_value(self.reader.read_short())
        clazz.class_name = pool.get_value(self.reader.read_short())
        clazz.superclass_name = pool.get_value(self.reader.read_short())
        clazz.interfaces = self.parse_interface_table(clazz)
        clazz.fields = self.parse_fields(clazz, pool)
        clazz.methods = self.parse_methods(clazz, pool)
        clazz.attributes = Attribute.parse_attributes(self.reader, pool)

        return clazz

    def parse_constant_pool(self, clazz):
        pool = ConstantPool(self.reader.read_short())
        pool.parse(self.reader)

        return pool

    def parse_interface_table(self, clazz):
        size = self.reader.read_short()

        for i in range(size):
            self.reader.read_byte()

        return None

    def parse_fields(self, clazz, pool):
        fields = []

        for i in range(self.reader.read_short()):
            field = Field()
            field.parse(self.reader, pool)
            fields.append(field)

        return fields

    def parse_methods(self, clazz, pool):
        methods = []

        for i in range(self.reader.read_short()):
            m = Method()
            m.parse(self.reader, pool)
            methods.append(m)

        return methods
开发者ID:kylestev,项目名称:jbcm,代码行数:62,代码来源:dumper.py


注:本文中的reader.Reader.read_int方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。