IRONSOFTWAREHOME
ATUALIZAÇÕES DO DESENVOLVEDOR

Inverter string em C# (Como funciona para desenvolvedores)

Curtis Chau
Curtis Chau
Updated: 21 de abril de 2026

A manipulação de strings é um aspecto fundamental da programação, e uma tarefa comum é inverter uma string de entrada. Em C#, existem diversas maneiras de realizar essa tarefa, como usar um loop while, cada uma com suas vantagens, desvantagens e melhores casos de uso. Neste artigo, exploraremos vários métodos para inverter uma string ou um array de caracteres em C#, juntamente com exemplos de código para diferentes cenários e casos extremos. Além disso, apresentaremos uma excelente biblioteca para geração de PDFs chamada IronPDF , da Iron Software .

1. Utilizando funções integradas

C# oferece várias funções integradas para manipulação de strings, e uma delas é Array.Reverse(), que pode ser usada para inverter um array de caracteres ou um array de char que representa uma string. Aqui está um exemplo de código do método inverso:

public class Program
{
    // Main method: entry point of the program
    public static void Main()
    {
        string original = "Awesome IronPDF"; // String variable
        char[] charArray = original.ToCharArray(); // Convert string to character array
        Array.Reverse(charArray); // Reverse the character array
        string reversed = new string(charArray); // Create a new reversed string
        Console.WriteLine(reversed); // Output: FDPnorIemosewA
    }
}
C#

Vantagens

Código simples e conciso.

  • Utiliza funções integradas, reduzindo a necessidade de implementação personalizada.

Desvantagens

  • Requer a conversão da string em uma matriz de caracteres, o que consome memória adicional.
  • Não é adequado para cenários onde o desempenho é crítico.

2. Usando um StringBuilder

Outra abordagem para inverter uma string em C# é utilizando a classe StringBuilder, que fornece operações eficientes de manipulação de strings. Aqui está como você pode usar StringBuilder para inverter uma string:

public class Program
{
    // Main method: entry point of the program
    public static void Main()
    {
        string someText = "Awesome IronPDF"; // String variable
        StringBuilder sb = new StringBuilder(); // Create a StringBuilder instance
        for (int i = someText.Length - 1; i >= 0; i--)
        {
            sb.Append(someText[i]); // Append characters in reverse order
        }
        string reversed = sb.ToString(); // Convert StringBuilder to string
        Console.WriteLine(reversed); // Output: FDPnorIemosewA
    }
}
C#

Vantagens

  • Utilização eficiente da memória, especialmente para strings grandes.
  • Adequado para cenários onde o desempenho é crucial.

Desvantagens

  • Requer iteração manual sobre os caracteres da string original.
  • Ligeiramente mais verboso em comparação com o uso de funções integradas.

3. Abordagem Recursiva

Uma abordagem recursiva também pode ser usada para inverter uma string em C#. Este método envolve a troca recursiva de caracteres de ambas as extremidades da string até que toda a string esteja invertida. Eis uma implementação:

public class Program
{
    // Main method: entry point of the program
    public static void Main()
    {
        string someText = "Awesome IronPDF"; // Random string
        string reversed = ReverseString(someText); // Reverse a string
        Console.WriteLine(reversed); // Output: FDPnorIemosewA
    }

    // Recursive method to reverse a string
    public static string ReverseString(string str) 
    {
        if (str.Length <= 1)
            return str;
        return ReverseString(str.Substring(1)) + str[0]; // Recursive call and string concatenation
    }
}
C#

Vantagens

  • Código elegante e conciso.
  • Pode ser útil em cenários onde a recursão é preferida ou necessária.

Desvantagens

  • Pode resultar em estouro de pilha para strings extremamente longas devido a chamadas de função recursivas.
  • Menos eficiente em comparação com abordagens iterativas, especialmente para cadeias de caracteres longas.

Casos Extremos

Ao inverter strings, é essencial considerar os casos extremos para garantir robustez e correção. Alguns casos extremos a serem considerados incluem:

  • String vazia: Lida com cenários em que a string de entrada está vazia.
  • String nula: Tratamento de cenários em que a string de entrada é nula.
  • Cadeias de caracteres com caracteres especiais: Garantir que os caracteres especiais sejam tratados corretamente durante a inversão.

Gerar Documento PDF Usando Método de Reversão de String C#

O IronPDF se destaca na conversão de HTML para PDF , garantindo a preservação precisa dos layouts e estilos originais. É perfeito para criar PDFs a partir de conteúdo da web, como relatórios, faturas e documentação. Com suporte para arquivos HTML, URLs e strings HTML brutas, o IronPDF produz facilmente documentos PDF de alta qualidade.

using IronPdf;

class Program
{
    // Main method: entry point of the program
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer(); // Create a PDF renderer

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent); // Render HTML to PDF
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf"); // Save the PDF file

        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath); // Render HTML file to PDF
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf"); // Save the PDF file

        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url); // Render URL to PDF
        pdfFromUrl.SaveAs("URLToPDF.pdf"); // Save the PDF file
    }
}

Comece criando um aplicativo de console no Visual Studio.

C# Reverse String (Como Funciona para Desenvolvedores): Figura 1 - Aplicativo de Console

Forneça o nome e a localização do projeto.

C# Reverse String (Como Funciona para Desenvolvedores): Figura 2 - Configuração do Projeto

Selecione a versão do .NET .

C# Reverse String (Como Funciona para Desenvolvedores): Figura 3 - Framework de Destino

Instale o IronPDF no projeto criado.

C# Reverse String (Como Funciona para Desenvolvedores): Figura 4 - IronPDF

Isso também pode ser feito usando a linha de comando abaixo.

dotnet add package IronPdf --version 2024.4.2

Escreva o código abaixo para demonstrar a inversão de strings.

public class Program
{
    // Main method: entry point of the program
    public static void Main()
    {
        var content = "<h1>Demonstrate IronPDF with C# LinkedList</h1>";
        content += "<h2>1. Using Array.Reverse Method</h2>";
        string someText = "Awesome IronPDF"; // New string variable
        content += $"<p>Input String: {someText}</p>";
        char[] charArray = someText.ToCharArray(); // Convert string to character array
        Array.Reverse(charArray); // Reverse the character array
        string reversed1 = new string(charArray); // Create a new reversed string
        Console.WriteLine(reversed1); // Output: FDPnorIemosewA
        content += $"<p>Output: {reversed1}</p>";
        content += "<h2>2. Using StringBuilder</h2>";
        StringBuilder sb = new StringBuilder(); // Create a StringBuilder instance
        content += $"<p>Input String: {someText}</p>";
        for (int i = someText.Length - 1; i >= 0; i--)
        {
            sb.Append(someText[i]); // Append characters in reverse order
        }
        string reversed2 = sb.ToString(); // Convert StringBuilder to string
        Console.WriteLine(reversed2); // Output: FDPnorIemosewA
        content += $"<p>Output: {reversed2}</p>";
        content += "<h2>3. Using Recursive Approach</h2>";
        content += $"<p>Input String: {someText}</p>";
        string reversed3 = ReverseString(someText); // Reverse a string
        Console.WriteLine(reversed3); // Output: FDPnorIemosewA
        content += $"<p>Output: {reversed3}</p>";
        // Create Renderer
        var renderer = new ChromePdfRenderer(); // Create a PDF renderer
        // Create a PDF from HTML string
        var pdf = renderer.RenderHtmlAsPdf(content); // Render HTML to PDF
        // Save to a file or Stream
        pdf.SaveAs("reverseString.pdf"); // Save the PDF file
    }

    // Recursive method to reverse a string
    public static string ReverseString(string str)
    {
        if (str.Length <= 1)
            return str;
        return ReverseString(str.Substring(1)) + str[0]; // Recursive call and string concatenation
    }
}
C#

Saída

C# Reverse String (Como Funciona para Desenvolvedores): Figura 5 - Saída PDF

Licença (Versão de avaliação disponível para IronPDF)

A biblioteca IronPDF requer uma licença para executar aplicativos. Mais informações podem ser encontradas na página de Informações sobre Licenciamento do IronPDF .

É possível obter uma licença de avaliação na página de Licença de Avaliação do IronPDF .

Cole a chave no arquivo appSettings.json abaixo.

{
  "IronPdf.License.LicenseKey": "The Key Goes Here"
}
JSON

Conclusão

Inverter uma string em C# é uma tarefa comum de programação com diversas abordagens e considerações. Se você prefere funções integradas, StringBuilder, ou métodos recursivos, cada abordagem tem suas vantagens, desvantagens e melhores casos de uso. Ao entender esses métodos e considerar os casos extremos, você pode inverter strings em C# de forma eficaz e adequada às suas necessidades específicas. Escolha o método que melhor se adapte às suas necessidades com base no desempenho, uso de memória e tratamento de caracteres especiais.

Com a biblioteca IronPDF para operações de PDF em C# , os desenvolvedores podem adquirir habilidades avançadas para desenvolver aplicações modernas.

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 bem estruturados e visualmente atraentes.

...
Leia mais

Artigos relacionados

Key in blue circle

Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.

Your trial license will be sent to your email address

Sem limitações. 100% desbloqueado. Sem cartão de crédito.

bullet_checkedNão é necessário cartão de crédito nem criação de conta.Sem limitações. 100% desbloqueado. Sem cartão de crédito.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Agende sua demonstração ao vivo gratuita.
Booking Badge

Aprovado por milhões de engenheiros em todo o mundo.

Logotipos dos clientes da Iron Software
Agende sua consulta sem compromisso.
Preencha o formulário abaixo ou envie um e-mail para sales@ironsoftware.com
Os seus dados serão sempre mantidos em sigilo.
Aprovado por milhões de engenheiros em todo o mundo.
Logotipos dos clientes da Iron Software
Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.
Não é necessário cartão de crédito nem criação de conta.