martedì 29 marzo 2011 #

La soluzione ad un piccolo problema di conversione

Non essendo qualcosa che si usa quotidianamente lo scrivo al solito per trovarlo se mi serve.

Un collega mi ha chiesto oggi di aiutarlo con un problema nella conversione di una funzione VB in C#, questa funzione calcola il checksum per una stringa rappresentante dei valori esadecimali che deve poi essere spedita ad una device via seriale.

Il problema era che VB converte “H&F6” in uno short , mentre short.TryParse( “0xF6”, out val) non lo fa.

Il problema è dovuto al fatto che per default TryParse si aspetta una stringa che contiene un numero e un esadecimale virtualmente non lo è.

La soluzione è usare la seguente riga di codice:

val = Int16.Parse("0xF6", System.Globalization.NumberStyles.HexNumber);

Molto facile, ma siccome ci ho perso mezz’ora a trovarla, spero di risparmiarla a qualcun’altro. Occhiolino

posted @ martedì 29 marzo 2011 17.56 | Feedback (0)

Copyright © Sabrina C.

Design by Bartosz Brzezinski

Design by Phil Haack Based On A Design By Bartosz Brzezinski