Objetivos
Clique sobre os tópicos listados abaixo para navegar até o conteúdo desejado.
ToByte/ToSByte
ToChar
BitConverter
Enconding
exceptions lançadas
Formatação de dados
A classe Convert(.NET) possui um vasto número de métodos para conversão de dados
utilizados pela linguagem C#. Nesta parte do tutorial, vamos estudar alguns métodos mais
utilizados dessa classe.
Sintaxe
Convert.nome_metodo(argumento);
Alguns os métodos mostrados abaixo lançam erro ou exceção caso a conversão de dados não
tenha sucesso. Outros retornam 0 ou 1 como resultado.
Os tipos de dados primitivos utilizados nesta seção foram vistos em
C# Básico: Tipos de Dados. Outros tipos como
DateTime serão vistos em futuras atualizações.
Com o método ChangeType podemos converter um objeto para um determinado tipo de dado. Um erro é
gerado caso a conversão não possa ser realizada.
Sintaxe
public static object? ChangeType(object? value, Type conversionType);
Onde
value: objeto/valor para conversão
conversionType: tipo de dado para conversão.
Retorno
value convertido para tipo conversionType.
Exemplo 1
using System;
public class Program
{
public static void Main()
{
string str1 = "false";
Object ret = Convert.ChangeType(str1,typeof(Boolean));
Console.WriteLine(ret);
}
}
Saída
False
FromHexString/ToHexString
Com os métodos FromHexString e ToHexString podemos converter uma string para um array de bytes
e vice-versa.
Sintaxe
public static byte[] FromHexString(string s);
public static byte[] ToHexString(byte[] inArray);
Onde
s: string para conversão
inArray: array de bytes para conversão.
Retorno
s: convertido para byte[]
inArray: convertido para string
Exemplo 2
using System;
public class Program
{
public static void Main()
{
string str1 = "ffeeddccbbaa";
byte[] array = Convert.FromHexString(str1);
foreach ( byte b in array)
Console.Write(b);
Console.WriteLine();
string str2 = Convert.ToHexString(array);
Console.WriteLine(str2);
}
}
Saída
255238221204187170
FFEEDDCCBBAA
Utilizando o método ToBoolean podemos converter valores string ou inteiro, por exemplo,
para o tipo de dado Boolean.
Sintaxe
public static bool ToBoolean(byte value);
Onde
value: valor string, byte, char, decimal, double, int e outros
Retorno
value convertido para boolean
Exemplo 3
using System;
public class Program
{
public static void Main()
{
Console.WriteLine(Convert.ToBoolean(1));
Console.WriteLine(Convert.ToBoolean(0));
Console.WriteLine(Convert.ToBoolean("true"));
Console.WriteLine(Convert.ToBoolean("false"));
}
}
Saída
True
False
True
False
Usando o método de conversão ToDateTime, podemos converter data contidas em strings, por exemplo, para o formato
DateTime.
Sintaxe
public static DateTime ToDateTime(string? value);
Onde
value: valor string para conversão
Retorno
value convertido para DateTime
Exemplo 4
using System;
public class Program
{
public static void Main()
{
Console.WriteLine(Convert.ToDateTime("01/31/2024"));
Console.WriteLine(Convert.ToDateTime("01-01-2024"));
Console.WriteLine(Convert.ToDateTime("01-31-2024"));
}
}
Saída
01/31/2024 00:00:00
01/01/2024 00:00:00
01/31/2024 00:00:00
O tipo de dados DateTime pode ser visto em Classes Nativas: DateTime
com mais detalhes.
Fazendo udo do método ToDecimal, podemos converter valores int, float e string,
por exemplo, para o formato decimal.
Sintaxe
public static decimal ToDecimal(object? value);
Onde
value: valor para conversão: string, byte, int, bool, char e outros
Retorno
value convertido para decimal
Exemplo 5
using System;
public class Program
{
public static void Main()
{
Console.WriteLine(Convert.ToDecimal(100));
Console.WriteLine(Convert.ToDecimal(1.99F));
Console.WriteLine(Convert.ToDecimal("10.50"));
}
}
Saída
100
1.99
10.50
O método ToDouble é utilizado para converter valores int, float e string, por exemplo, para o formato double.
Sintaxe
public static double ToDouble(object? value);
Onde
value: valor para conversão: string, byte, int, bool, char e outros
Retorno
value convertido para double
Exemplo 6
using System;
public class Program
{
public static void Main()
{
Console.WriteLine(Convert.ToDouble(100));
Console.WriteLine(Convert.ToDouble(1.12345));
Console.WriteLine(Convert.ToDouble("10.50"));
}
}
Saída
100
1.12345
10.5
Com o método ToString, podemos converter valores int, float e boolean, por exemplo, para o formato string.
Sintaxe
public static string ToString(object? value);
Onde
value: valor para conversão: string, byte, int, bool, char e outros
Retorno
value convertido para string
Exemplo 7
using System;
public class Program
{
public static void Main()
{
Console.WriteLine(Convert.ToString(100));
Console.WriteLine(Convert.ToString(1.12345));
Console.WriteLine(Convert.ToString(true));
Console.WriteLine(Convert.ToString('A'));
}
}
Saída
1100
1.12345
True
A
Os métodos ToIn32/ToUint32 são utilizado para converter valores byte, int e bool, por exemplo, para o formato
inteiro sinalizado e não-sinalizado.
Sintaxe
public static Int32 ToInt32(object? value);
public static Int32 ToInt32(object? value);
Onde
value: valor para conversão: string, byte, int, bool, char e outros
Retorno
value convertido para string
Exemplo 7
using System;
public class Program
{
public static void Main()
{
Console.WriteLine(Convert.ToInt32(true));
Console.WriteLine(Convert.ToInt32("100"));
Console.WriteLine(Convert.ToInt32('A'));
Console.WriteLine(Convert.ToUInt32("16777215"));
Console.WriteLine(Convert.ToUInt32(true));
Console.WriteLine(Convert.ToUInt32(0xffff));
}
}
Saída
1
100
65
16777215
1
65535
A sinalização de valores foi visto em
Tutorial C: Sinalização.
Histórico de atualizações
- 05/08/2025 - revisão 2 - Correções: pontuais, link internot 'Tipos de dados','Objetivos', sintaxes'
- 14/10/2024 - revisão 1 - Correção: 'ToString' ; Ajustes pontuais
- 12/03/2024 - versão inicial
Os cursos oferecidos nesta página são cursos fornecidos por parceiros. Ao comprar um curso clicando
em seu banner, você está ajudando a manter o projeto TutorialDev vivo. Os sites dos cursos parceiros utilizam cookies.