PDA

View Full Version : VB: Salvataggio esadecimale ?


DanieleC88
18-06-2002, 20:27
COME[/SIZ]
posso fare per salvare un file... criptato ? Una volta avevo visto (ma non la ricordo e non l'ho più trovata) una modalità di salvataggio, tipo questa:

Età = Text1(valore 13) + Text2(valore 15)
Open "C:\Windows\Temp\Hexadecimal.hex" for Output as #1
Print #1, ("&H" & Età)
Close

Come posso fare per salvare e poi caricare i file esadecimali correttamente ? Può funzionare quello che ho scritto ? É tutto da rifare ?

:( Aiuto ! :(

tas
19-06-2002, 19:34
La funzione Hex$() ti permette di convertire un numero in una stringa esadecimale. Di conseguenza, se vuoi scrivere nel file una stringa, potresti fare così:


Dim s as String 'stringa di input
Dim i as Integer
Dim h as String 'stringa di output

s = "Testo di prova"

For i=1 To Len(s)
h = h & Right$("0" & Hex$(Asc(Mid$(s, i, 1))), 2)
Next

Open "C:\Windows\Temp\Hexadecimal.hex" for Output as #1

Print #1, h

Close #1


In sostanza, nel ciclo For converto ogni carattere della stringa s in codice ascii, poi lo converto in esadecimale, poi mi assicuro che la lunghezza complessiva del numero esadecimale sia di due cifre.

Per fare l'operazione inversa... supponendo che in h hai la stringa in formato esadecimale:

For i=1 to Len(h) Step 2
s = s & Chr$(CByte("&h" & Mid$(h, i, 2)))
Next

tas
19-06-2002, 19:34

DanieleC88
24-06-2002, 19:26
Grazie mille, tas, anche se nel frattempo ho trovato io un'altro modo di salvare, un pò grezzo. Sei un grande, tas !