Maison >développement back-end >C++ >Comment convertir efficacement les nombres en bases arbitraires dans .NET?
Convert.ToString
Méthode de conversion personnalisée
Cette méthode utilise la valeur à convertir et un tableau de caractères, qui représente les caractères de l'entrée cible. Il répète la valeur de calcul à l'exception du nombre restant de la cible et ajoute le caractère correspondant à la chaîne de résultats.
<code class="language-csharp">public static string IntToString(int value, char[] baseChars) { string result = string.Empty; int targetBase = baseChars.Length; do { result = baseChars[value % targetBase] + result; value = value / targetBase; } while (value > 0); return result; }</code>
Utiliser des exemples
Pour utiliser cette méthode, vous pouvez transmettre la valeur de la valeur de la valeur et de la cible, par exemple:Précautions de performance
<code class="language-csharp">// 转换为二进制 string binary = IntToString(5, new char[] { '0', '1' }); // 转换为十六进制 string hex = IntToString(42, new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'}); // 转换为六十进制 string sexagesimal = IntToString(42, new char[] { '0','1','2','3','4','5','6','7','8','9', 'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z', 'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x'});</code>La méthode ci-dessus est connectée pour construire la chaîne de résultats avec une chaîne. Pour un grand nombre, cela peut être lent. La version améliorée utilisera le tampon du tableau pour accumuler des caractères.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!