Comment puis-je convertir la chaîne suivante:En C#, Comment convertir une chaîne hexadécimale en int?
6F
par exemple, à un int normal? C'est une valeur hexadécimale.
Merci.
Comment puis-je convertir la chaîne suivante:En C#, Comment convertir une chaîne hexadécimale en int?
6F
par exemple, à un int normal? C'est une valeur hexadécimale.
Merci.
string s = "6F";
int i = Int32.Parse(s, NumberStyles.AllowHexSpecifier);
Console.WriteLine(i); // prints "111" to the console
Pour plus de détails sur NumberStyles
, voir MSDN.
Il serait préférable d'utiliser int.Parse plutôt qu'int32. – womp
@womp: Pourquoi? Les deux sont de même type en CLR ... –
Juste une recommandation de style. Si vous déclarez votre variable comme "int", alors vous devriez utiliser "int.Parse()". Si vous utilisez Int32, utilisez Int32.Parse(). Vous devriez vraiment suivre une utilisation standard, celle que vous choisissez. – womp
int num = Int32.Parse(strValue, System.Globalization.NumberStyles.HexNumber);
Convert.ToInt32 (chaîneValeur, 16);
Où dernière PARAM est la base de 16
Voir http://stackoverflow.com/questions/1214980/convert-a-single-hex-character-to-its-byte-value-in-c/1215076 # 1215076 –