# Aiuto per conversione byte.Parse in ruby

**URL:** <https://www.ruby-forum.com/t/aiuto-per-conversione-byte-parse-in-ruby/207121>\
**Category:** IT\
**Created:** [May 18, 2011, 8:45pm UTC](https://www.ruby-forum.com/t/aiuto-per-conversione-byte-parse-in-ruby/207121 "2011-05-18T20:45:41Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![luislavena](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/l/0ea827/32.png) [@luislavena](https://www.ruby-forum.com/u/luislavena)\
**Post date:** [May 18, 2011, 8:45pm UTC](https://www.ruby-forum.com/t/aiuto-per-conversione-byte-parse-in-ruby/207121/1 "2011-05-18T20:45:41Z")

</div>

Ciao, devo tradurre un algoritmo da C# in Ruby.  
Vorrei chiedervi un aiuto per tradurre un paio di istruzioni…

string value = “sequenza\_di\_caratteri”;  
Encoding ecAscii = Encoding.GetEncoding(“Windows-1252”);

Byte[] bWordBytes = ecAscii.GetBytes(value);

int iAsciiInt = 112  
Byte[] bappoByte = new Byte[1];  
bappoByte[0] = byte.Parse(iAsciiInt.ToString());  
string out = ecAscii.GetString(bappoByte);

potete aiutarmi?

---

<div class="post-metadata">

**Author:** ![michx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/73ab20/32.png) [@michx](https://www.ruby-forum.com/u/michx)\
**Post date:** [May 19, 2011, 9:02am UTC](https://www.ruby-forum.com/t/aiuto-per-conversione-byte-parse-in-ruby/207121/2 "2011-05-19T09:02:31Z")

</div>

On 18 May 2011 20:45, Mattia xxx [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Ciao, devo tradurre un algoritmo da C# in Ruby.  
> Vorrei chiedervi un aiuto per tradurre un paio di istruzioni…

Ciao Mattia, secondo me meglio se prendi l’algoritmo e lo implementi  
in Ruby lasciando perdere la traduzione “letterale” da C#.  
Non detto infatti che la sintassi di C# possa essere ricondotta  
“pari pari” a codice Ruby.

## Magari se ci spieghi il problema che l’algoritmo risolve possiamo darti una mano 🙂 Paolo

“… static analysis is fun, again!”

life from an application security guy ~\> [http://thesp0nge.com](http://thesp0nge.com)

---

<div class="post-metadata">

**Author:** ![michx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/73ab20/32.png) [@michx](https://www.ruby-forum.com/u/michx)\
**Post date:** [May 19, 2011, 9:41am UTC](https://www.ruby-forum.com/t/aiuto-per-conversione-byte-parse-in-ruby/207121/3 "2011-05-19T09:41:48Z")

</div>

Paolo P. wrote in post #999584:

> On 18 May 2011 20:45, Mattia xxx [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:
> 
> Ciao Mattia, secondo me meglio se prendi l’algoritmo e lo implementi  
> in Ruby lasciando perdere la traduzione “letterale” da C#.  
> Non detto infatti che la sintassi di C# possa essere ricondotta  
> “pari pari” a codice Ruby.
> 
> ## Magari se ci spieghi il problema che l’algoritmo risolve possiamo darti una mano 🙂 Paolo
> 
> “… static analysis is fun, again!”
> 
> life from an application security guy ~\> [http://thesp0nge.com](http://thesp0nge.com)

Ciao,  
si tratta di un algoritmo di cifratura di cui non conosco le specifiche.  
L’algoritmo è abbastanza lungo, ma gli unici punti di cui volevo essere  
sicuro sono quelli sopra riportati.

Partendo dalla stringa crittografata, l’algoritmo ricava la sequenza di  
bytes con Byte bWordBytes = ecAscii.GetBytes(value).  
Io l’ho tradotta in questo modo:

bWordBytes =   
value.each\_byte { |byte| bWordBytes \<\< byte }

Poi viene calcolato un numero intero, salvato nella variabile iAsciiInt.  
A questo punto vengono eseguite le 2 istruzioni:

bappoByte[0] = byte.Parse(iAsciiInt.ToString());  
string out = ecAscii.GetString(bappoByte);

Ho cercato sulla documentazione msdn ma non riesco a comprendere  
l’utilità della funzione byte.Parse()… infatti sembra che, a partire  
da un intero sotto forma di stringa (es. “65”), restituisce il byte  
associato al carattere ascii.. quindi “65” corrisponde al carattere A.  
Il byte è di nuovo 65…

successivamente con GetStrin() da 65 ottiene ancora “A”…

grazie della risposta!
