Ir para o conteúdo do rodapé
AJUDA DO .NET

Converter String para Int em C# (Como funciona para desenvolvedores)

A conversão de tipos de dados é um conceito fundamental em programação e, ao programar em C#, uma das tarefas mais comuns é converter a representação de um número em formato de string para um número inteiro. Esse processo é útil em muitas aplicações onde a entrada do usuário ou dados de uma fonte externa precisam ser transformados em um formato numérico para cálculos ou outras operações.

Neste tutorial, exploraremos diferentes métodos fornecidos pelo C# para converter strings em números inteiros. Também exploraremos a página inicial da biblioteca IronPDF .

Noções básicas de conversão de variáveis ​​de string para inteiros (int).

Os métodos Convert.ToInt32 e Int32.Parse são ferramentas padrão em C# para converter um valor de string em um valor inteiro. Essas funções são projetadas para interpretar o valor numérico de uma string de entrada e transformá-lo em um número inteiro (int). No entanto, esses métodos podem gerar exceções se a string não estiver no formato correto, o que torna o tratamento de exceções um aspecto essencial do uso dessas ferramentas.

Usando o método Int32.Parse

O método Int32.Parse converte uma string numérica válida em um número inteiro diretamente. É necessário que a string esteja em um formato numérico válido; caso contrário, lançará um FormatException. Esse método é simples quando você tem certeza de que a sequência de caracteres é um número válido. Por exemplo:

public static string inputString = "123";
public static int result = int.Parse(inputString);
Console.WriteLine(result);
public static string inputString = "123";
public static int result = int.Parse(inputString);
Console.WriteLine(result);
Public Shared inputString As String = "123"
Public Shared result As Integer = Integer.Parse(inputString)
Console.WriteLine(result)
$vbLabelText   $csharpLabel

No código acima, inputString contém um número válido, e o método Parse o converte para o inteiro 123. No entanto, se inputString incluir caracteres não numéricos ou for uma string vazia, usar Parse resultará em FormatException ou ArgumentNullException.

Usando o método Convert.ToInt32

Outro método para converter uma string em um inteiro é Convert.ToInt32. Este método é semelhante a Int32.Parse mas oferece um pouco mais de flexibilidade. Ele lida com strings nulas e vazias retornando um valor padrão de zero, o que evita o lançamento de uma exceção. Eis como você pode usá-lo:

public static string inputString = null;
public static int result = Convert.ToInt32(inputString);
Console.WriteLine(result);
public static string inputString = null;
public static int result = Convert.ToInt32(inputString);
Console.WriteLine(result);
Public Shared inputString As String = Nothing
Public Shared result As Integer = Convert.ToInt32(inputString)
Console.WriteLine(result)
$vbLabelText   $csharpLabel

Este método converterá inputString para 0 sem lançar uma exceção, tornando-o mais seguro para variáveis ​​que podem não estar inicializadas corretamente.

Técnicas avançadas com Int32.TryParse

Para um melhor controle sobre o processo de conversão, especialmente ao lidar com entradas de usuários que podem não ser confiáveis, Int32.TryParse é um método preferido. Este método tenta analisar strings numéricas e retorna um valor booleano que indica se o método TryParse conseguiu converter a string em um número inteiro. Ele usa um parâmetro de saída para retornar o número inteiro convertido.

Exemplo de uso de Int32.TryParse

Veja como você pode usar o método Int32.TryParse para converter com segurança uma entrada de string em um valor inteiro, lidando adequadamente com qualquer entrada de string inválida:

string inputString = "abc123";
int num;
bool conversionSucceeded = int.TryParse(inputString, out num);
if (conversionSucceeded)
{
    Console.WriteLine("Successfully parsed: " + num);
}
else
{
    Console.WriteLine("Conversion failed. Provided string is not a valid integer.");
}
string inputString = "abc123";
int num;
bool conversionSucceeded = int.TryParse(inputString, out num);
if (conversionSucceeded)
{
    Console.WriteLine("Successfully parsed: " + num);
}
else
{
    Console.WriteLine("Conversion failed. Provided string is not a valid integer.");
}
Dim inputString As String = "abc123"
Dim num As Integer = Nothing
Dim conversionSucceeded As Boolean = Integer.TryParse(inputString, num)
If conversionSucceeded Then
	Console.WriteLine("Successfully parsed: " & num)
Else
	Console.WriteLine("Conversion failed. Provided string is not a valid integer.")
End If
$vbLabelText   $csharpLabel

Neste exemplo, Int32.TryParse retorna falso porque inputString não é um número inteiro válido. O parâmetro de saída num permanece 0, e o programa informa o usuário sobre a falha na conversão sem lançar nenhuma exceção.

Introdução à Biblioteca IronPDF

A seção Visão Geral do IronPDF é uma biblioteca robusta em C# projetada para simplificar a manipulação de PDFs para desenvolvedores que utilizam o .NET Framework. Permite a criação, edição e gerenciamento de documentos PDF diretamente a partir de HTML , CSS, JavaScript e imagens. A principal característica do IronPDF é sua capacidade de converter conteúdo HTML diretamente em PDFs.

Isso inclui a conversão de páginas web inteiras ou strings HTML, tornando-o altamente flexível. O IronPDF foi projetado para ser poderoso e fácil de integrar, com suporte para uma variedade de ambientes de desenvolvimento.

Exemplo de código

Aqui está um exemplo simples que combina o IronPDF para geração de PDFs com código C# para analisar uma string, convertê-la em um número inteiro e exibi-la no PDF. Este exemplo pressupõe que você queira pegar uma string numérica, convertê-la em um número inteiro e, em seguida, imprimir o número inteiro em um documento PDF usando o IronPDF.

using IronPdf;
using System;

class Program
{
    static void Main(string[] args)
    {
        // License your IronPdf installation
        License.LicenseKey = "Your-License-Key";

        // Create a new PDF document
        var pdf = new ChromePdfRenderer();

        // Sample string that represents an integer
        string numberString = "12345";

        // Attempt to parse the string into an integer
        int number;
        bool result = Int32.TryParse(numberString, out number);
        if (result)
        {
            // Create HTML content including the parsed number
            string htmlContent = $"<h1>The number is: {number}</h1>";

            // Generate a PDF from the HTML string
            var document = pdf.RenderHtmlAsPdf(htmlContent);

            // Save the PDF to a file
            document.SaveAs("Output.pdf");
            Console.WriteLine("PDF generated successfully with the number included.");
        }
        else
        {
            Console.WriteLine("The string could not be parsed into an integer.");
        }
    }
}
using IronPdf;
using System;

class Program
{
    static void Main(string[] args)
    {
        // License your IronPdf installation
        License.LicenseKey = "Your-License-Key";

        // Create a new PDF document
        var pdf = new ChromePdfRenderer();

        // Sample string that represents an integer
        string numberString = "12345";

        // Attempt to parse the string into an integer
        int number;
        bool result = Int32.TryParse(numberString, out number);
        if (result)
        {
            // Create HTML content including the parsed number
            string htmlContent = $"<h1>The number is: {number}</h1>";

            // Generate a PDF from the HTML string
            var document = pdf.RenderHtmlAsPdf(htmlContent);

            // Save the PDF to a file
            document.SaveAs("Output.pdf");
            Console.WriteLine("PDF generated successfully with the number included.");
        }
        else
        {
            Console.WriteLine("The string could not be parsed into an integer.");
        }
    }
}
Imports IronPdf
Imports System

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' License your IronPdf installation
		License.LicenseKey = "Your-License-Key"

		' Create a new PDF document
		Dim pdf = New ChromePdfRenderer()

		' Sample string that represents an integer
		Dim numberString As String = "12345"

		' Attempt to parse the string into an integer
		Dim number As Integer = Nothing
		Dim result As Boolean = Int32.TryParse(numberString, number)
		If result Then
			' Create HTML content including the parsed number
			Dim htmlContent As String = $"<h1>The number is: {number}</h1>"

			' Generate a PDF from the HTML string
			Dim document = pdf.RenderHtmlAsPdf(htmlContent)

			' Save the PDF to a file
			document.SaveAs("Output.pdf")
			Console.WriteLine("PDF generated successfully with the number included.")
		Else
			Console.WriteLine("The string could not be parsed into an integer.")
		End If
	End Sub
End Class
$vbLabelText   $csharpLabel

Converter String para Int em C# (Como funciona para desenvolvedores): Figura 1 - PDF gerado pelo exemplo de código anterior

Conclusão

Converter strings em números inteiros é um requisito comum na programação em C#, especialmente ao lidar com entrada de dados de usuários ou fontes externas. Compreender as diferenças entre os métodos Int32.Parse, Convert.ToInt32 e TryParse é essencial para escrever código robusto e resistente a erros.

Ao utilizar esses métodos de forma eficaz, você pode garantir que seus aplicativos consigam lidar com diversos formatos de entrada e respondam adequadamente a dados inválidos. Explore a Licença de Avaliação Gratuita do IronPDF para conhecer seus recursos antes de efetuar a compra. Para aqueles que desejam integrar o IronPDF em seus projetos a longo prazo, as opções de licenciamento do IronPDF começam em $799.

Perguntas frequentes

Como posso converter uma string em um número inteiro em C#?

Em C#, você pode usar métodos como Convert.ToInt32 , Int32.Parse e Int32.TryParse para converter uma string em um inteiro. Cada método tem suas próprias vantagens, sendo o Int32.TryParse ideal para lidar com entradas inválidas sem gerar exceções.

Qual é o melhor método para converter strings de entrada do usuário em números inteiros em C#?

O método Int32.TryParse é recomendado para converter strings de entrada do usuário em inteiros em C#, pois fornece um resultado booleano indicando sucesso ou falha, permitindo que o programa lide com entradas inválidas de forma adequada, sem lançar exceções.

Como o método Convert.ToInt32 lida com strings nulas ou vazias em C#?

O método Convert.ToInt32 em C# lida com strings nulas ou vazias retornando um valor inteiro padrão de zero, evitando assim exceções que podem ocorrer com entradas inválidas.

Por que o tratamento de exceções é necessário ao usar Int32.Parse em C#?

O tratamento de exceções é necessário ao usar Int32.Parse porque ele lança uma FormatException se a string de entrada não estiver em um formato numérico válido ou for nula, o que pode interromper o fluxo do programa se não for tratado adequadamente.

O IronPDF pode ser usado para integrar números inteiros analisados em documentos PDF?

Sim, o IronPDF pode ser usado para converter conteúdo HTML, que pode incluir números inteiros analisados, diretamente em documentos PDF, facilitando a exibição e distribuição de dados numéricos formatados.

Qual é uma aplicação prática da conversão de strings em inteiros em C#?

Uma aplicação prática é a conversão de dados inseridos pelo usuário ou dados externos em um formato numérico para cálculos ou processamento dentro de um aplicativo, como em cálculos financeiros ou análises estatísticas.

Como o IronPDF pode auxiliar na criação de PDFs em aplicações C#?

IronPDF é uma biblioteca C# que auxilia na criação de PDFs, permitindo que desenvolvedores gerem, editem e gerenciem PDFs a partir de HTML, CSS, JavaScript e imagens, tornando-se uma ferramenta ideal para integrar conteúdo da web em documentos PDF.

Quais são os benefícios de usar Int32.TryParse para conversão de inteiros em C#?

Int32.TryParse oferece a vantagem de não lançar exceções para entradas inválidas. Ele fornece um valor booleano indicando o sucesso da conversão, permitindo que os desenvolvedores lidem com erros de forma controlada.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais

Equipe de suporte de ferro

Estamos online 24 horas por dia, 5 dias por semana.
Bater papo
E-mail
Liga para mim