Flyer

Untitled

Nov 11th, 2012
211
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.93 KB | None | 0 0
  1. import struct
  2. class ByteArray:
  3.     def __init__(self, bytes=''):
  4.         self.bytesString = bytes
  5.        
  6.     def writeBoolean(self, value=1):
  7.         self.bytesString += self.writeByte(value, False)
  8.    
  9.     def writeByte(self, value, noReturning=True):
  10.         if noReturning: self.bytesString += struct.pack('!b', value)
  11.         else: return struct.pack('!b', value)
  12.        
  13.     def writeBytes(self, value):
  14.         self.bytesString += value
  15.    
  16.     def writeInt(self, value):
  17.         self.bytesString += struct.pack('!l', value)
  18.    
  19.     def writeShort(self, value):
  20.         self.bytesString += struct.pack('!h', value)
  21.    
  22.     def writeUTF(self, value):
  23.         valueSize = len(value)
  24.         self.writeShort(valueSize)
  25.         self.writeUTFBytes(value)
  26.    
  27.     def writeUTFBytes(self, value):
  28.         self.bytesString += value
  29.    
  30.     def length(self):
  31.         return len(self.bytesString)
  32.    
  33.     def toString(self):
  34.         return self.bytesString
  35.    
  36.     def getSize(self, Pos):
  37.         return struct.unpack('!l', self.bytesString[:4])[0]
  38.    
  39.     def readBy(self, Pos):
  40.         self.bytesString = self.bytesString[Pos:]
  41.         return self.bytesString
  42.        
  43.     def loc(self, byte):
  44.         loc = self.bytesString[:byte]
  45.         self.bytesString = self.bytesString[byte:]
  46.         return struct.unpack('!b', loc)[0]
  47.    
  48.     def readInt(self):
  49.         size = struct.unpack('!l', self.bytesString[:4])[0]
  50.         self.bytesString = self.bytesString[4:]
  51.         return size
  52.    
  53.     def readUTF(self):
  54.         size = struct.unpack('!h', self.bytesString[:2])[0]
  55.         string = self.bytesString[2:2 + size]
  56.         self.bytesString = self.bytesString[size + 2:]
  57.         return string.replace("'","")
  58.  
  59.     def readShort(self):
  60.         size = struct.unpack('!h', self.bytesString[:2])[0]
  61.         self.bytesString = self.bytesString[2:]
  62.         return size
  63.        
  64.     def readBoolean(self):
  65.         loc = struct.unpack('!b', self.bytesString[:1])[0]
  66.         self.bytesString = self.bytesString[1:]
  67.         if loc == 1: return True
  68.         else: return False
  69.        
  70.     def readByte(self):
  71.         size = struct.unpack('!b', self.bytesString[:1])[0]
  72.         self.bytesString = self.bytesString[1:]
  73.         return size
Add Comment
Please, Sign In to add comment