Converter String em Hex em C#

Muhammad Maisam Abbas 20 novembro 2021 9 maio 2021 Csharp Csharp String Csharp Hex
  1. Converta String em Hex com o método BitConverter.ToString() em C#
  2. Converter String em Hex com o método String.Format() em C#
Converter String em Hex em C#

Este tutorial irá discutir os métodos para transformar uma string em hexadecimal em C#.

Converta String em Hex com o método BitConverter.ToString() em C#

Se tivermos uma string que contém valores numéricos de base 10 e precisarmos convertê-la em uma string que contenha valores numéricos de base 16, podemos usar o método BitConverter.ToString() para isso. O método BitConverter.ToString(x) em C# converte cada elemento na matriz de bytes x em um valor hexadecimal. Para usar o método BitConverter.ToString(), temos que converter nossa variável string em um array de bytes com o método Encoding.Default.GetBytes(). Este método converte uma variável de string em um array de bytes em C#. O método BitConverter.ToString() retorna uma string hexadecimal na qual cada valor é separado por -. Podemos usar o método String.Replace() para remover o separador -.

using System;
using System.Linq;
using System.Text;

namespace string_to_hex
{
    class Program
    {
        static void Main(string[] args)
        {
            string decString = "0123456789";
            byte[] bytes = Encoding.Default.GetBytes(decString);
            string hexString = BitConverter.ToString(bytes);
            hexString = hexString.Replace("-", "");
            Console.WriteLine(hexString);
        }
    }
}

Resultado:

30313233343536373839

No código acima, convertemos a string decString com valores decimais na string hexString com valores hexadecimais com o método BitConverter.ToString() em C#.

Converter String em Hex com o método String.Format() em C#

O método String.Format() formata uma string de acordo com o especificador de formato fornecido em C#. O especificador de formato {0:X2} especifica o formato hexadecimal. Podemos usar o especificador de formato {0:X2} dentro do método String.Format() para formatar uma string com valores decimais em uma string com valores hexadecimais. Podemos usar o LINQ para formatar facilmente cada caractere da string decimal em um formato hexadecimal.

using System;
using System.Linq;
using System.Text;

namespace string_to_hex
{
    class Program
    {
        static void Main(string[] args)
        {
            string decString = "0123456789";
            var hexString = string.Join("",
                decString.Select(c => String.Format("{0:X2}", Convert.ToInt32(c))));
            Console.WriteLine(hexString);
        }
    }
}

Resultado:

30313233343536373839

No código acima, convertemos a variável de string decString com valores decimais para a variável de string hexString com valores hexadecimais com o método String.Format() e LINQ em C#.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Artigo relacionado - Csharp String

  • C# Converter Int a String
  • C# Converter String em Enum
  • Use Strings na instrução Switch em C#
  • C# Converter String para Data
  • Como converter uma string em Booleano em C#
  • Como converter uma string em uma array de bytes em C#
  • Artigo relacionado - Csharp Hex

  • Converter Int em Hex em C#