История изменений
Исправление thunar, (текущая версия) :
Как-то так
class fileobj(object):
def __init__(self, fname):
self.a = ...
self.b = ...
def __getitem__(self, i):
lf = self.b[i]['offset']
rt = self.b[i]['length']+lf
return self.a[lf:rt]
Красивей, наверное, на старте прочитать все заголовки через struct и заmmapать в self.словарь все смещения по файлу, и к нему уже обращаться, тем более что у вас в файлах бинарные данные.
Исправление thunar, :
Как-то так
class fileobj(object):
def __init__(self, fname):
self.a = ...
self.b = ...
def __getitem__(self, i):
lf = self.b[i]['offset']
rt = self.b[i]['length']+lf
return self.a[lf:rt]
Красивей, наверное, на старте прочитать все заголовки через struct и заmmapать в self.словарь все смещения по файлу, и к нему уже обращаться.
Исправление thunar, :
Как-то так
class fileobj(object):
def __init__(self, fname):
self.a = ...
self.b = ...
def __getitem__(self, i):
lf = self.b[i]['offset']
rt = self.b[i]['length']+lf
return self.a[lf:rt]
Красивей, наверное, на старте прочитать все заголовки через struct и заmmapать в self.словарь все смещения по файлу.
Исправление thunar, :
Как-то так
class fileobj(object):
def __init__(self, fname):
self.a = ...
self.b = ...
def __getitem__(self, i):
lf = self.b[i]['offset']
rt = self.b[i]['length']+lf
return self.a[lf:rt]
Красивей, наверное, на старте прочитать все заголовки через struct и за mmapать в словарь все смещения по файлу.
Исправление thunar, :
Как-то так
class fileobj(object):
def __init__(self, fname):
self.a = ...
self.b = ...
def __getitem__(self, i):
lf = self.b[i]['offset']
rt = self.b[i]['length']+lf
return self.a[lf:rt]
Исправление thunar, :
Как-то так
class fileobj(object):
def __init__(self, fname):
self.a = ...
self.b = ...
def __getitem__(self, i):
lf = self.b[i]['offset']
rt = self.b[i]['length']+lf
return self.a[lf:rt]
mode='r'
Алсо, не 'rb'?
Исправление thunar, :
Как-то так
class fileobj(object):
def __init__(self, fname):
self.a = ...
self.b = ...
def __getitem__(self, i):
lf = self.b[i]['offset']
rt = self.b[i]['length']+lf
return self.a[lf:rt]
Исправление thunar, :
Как-то так
class fileobj(object):
def __init__(self, fname):
self.a = ...
self.b = ...
def __getitem__(self, i):
lf = self.b[i]['offset']
rt = self.b[i]['length']+lf
return self.a[lf:rt]
Исправление thunar, :
Как-то так
class fileobj(object):
def __init__(self, fname):
self.a = ...
self.b = ...
def __getitem__(self, i):
lf = self.b[i]['offset']
rt = self.b[i]['length']+lf
return self.a[lf:rt]
Исходная версия thunar, :
Как-то так
class AttributeDict(object):
def __init__(self, fname):
self.a = ...
self.b = ...
def __getitem__(self, i):
lf = self.b[i]['offset']
rt = self.b[i]['length']+lf
return self.a[lf:rt]