[Python] Letture file binario da Vb a Python

Daniele Varrazzo piro a develer.com
Gio 1 Nov 2012 10:46:50 CET


On 2012-11-01 09:09, Stefano Dal Pra wrote:
> Mah, direi che fa qualcosa tipo questo:

Grazie per il top posting, cosė č facile seguire domande e risposte no? 
Riordino...

> On Thu, Nov 1, 2012 at 9:33 AM, orsomannaro a gmail.com
> <orsomannaro a gmail.com> wrote:
>> C'e' qualcuno che sa aiutarmi a convertire questo pezzo di codice VB 
>> in
>> Python?

>> Dim Buffer As String * 327
>>
>> fileno = FreeFile
>> Open ".\DATAFILE" For Binary As #fileno
>> Get #fileno, , Buffer

> f = open('DATAFILE','rb')
> B = f.read(327)


>> VCod = Hex2(Asc(Mid(Buffer, 9, 1))) & Hex2(Asc(Mid(Buffer, 10,1))) &
>> Left(Hex2(Asc(Mid(Buffer, 11, 1))), 1)

> Vcod = "%02x%02x%02x"%(B[9], B[10], B[11])

Mi sembra che Mid sia base 1: in questo caso dovrebbe essere:

     Vcod = "%02x%02x%02x"%(ord(B[8]), ord(B[9]), ord(B[10]))


>> VCog = Trim(Mid(Buffer, 31, 30))
> Vcog = B[31:62].strip()

Sempre se Mid č base 1, questo sembra pių:

     Vcog = B[30:60].strip(' ')

strip elimina tutti i whitespace, anche tabe crlf, credo Trim() elimini 
solo gli spazi.


> Se puoi prova ad allegare un "DATAFILE" ed il risultato che da i
> lcodice originale...


-- 
Daniele Varrazzo - Develer S.r.l.
http://www.develer.com


Maggiori informazioni sulla lista Python