
Strings multilinhas em C# (Como funciona para desenvolvedores)
Ao começar a programar em C#, strings são um dos primeiros conceitos que você aprende. Se você já montou um programa Hello, World!, então já trabalhou com strings.
À medida que você se familiariza com C#, seus programas se tornarão mais complexos. Em pouco tempo, você começará a trabalhar com strings que abrangem várias linhas. Se você chegou a esse ponto, então está com sorte, porque neste guia explicaremos o que são strings de múltiplas linhas e como usá-las. Vamos começar.
O que é uma string multilinha?
As strings multilinhas são exatamente o que o nome indica: uma string que se estende por várias linhas, em contraste com a string usual de linha única. Em C#, uma string multilinha é criada usando literais de string, que são uma série de caracteres delimitados por aspas duplas. Para formar strings com várias linhas, precisamos usar um tipo especial de literal de string chamado literal de string verbatim.
A Magia das Cordas Verbatim
Para criar uma string literal de várias linhas em C#, usamos strings literais. Strings literais são prefixadas com o símbolo @ e nos permitem incluir quebras de linha, caracteres especiais e até espaços em branco sem usar sequências de escape.
Aqui está um exemplo de uma string multilinha usando uma string literal:
string str = @"This is a
multiline string
in C#.";Dim str As String = "This is a
multiline string
in C#."A string str contém três linhas, e cada linha é separada por uma quebra de linha. Observe o uso do símbolo @ para criar a string literal.
Caracteres de fuga em strings literais
Pode haver casos em que seja necessário incluir aspas duplas em uma string literal. Para fazer isso, você precisa usar aspas duplas. Por exemplo:
string str = @"This is a
""multiline""
string in C#.";Dim str As String = "This is a
""multiline""
string in C#."Neste exemplo, a string str contém a palavra "multiline" entre aspas duplas, o que é conseguido usando aspas duplas duplicadas dentro da string literal.
Concatenando strings de várias linhas
Frequentemente, você poderá precisar combinar strings de várias linhas com outras strings ou valores. Para concatenar uma string multilinha com outros valores de string, você pode usar o operador +, assim como faria com strings de linha única.
string name = "John";
string str = @"Hello, " + name + @",
Welcome to the
world of C# multiline strings!";Dim name As String = "John"
Dim str As String = "Hello, " & name & ",
Welcome to the
world of C# multiline strings!"Aqui, concatenamos a string multilinha com uma string de linha única name.
Formatação de strings multilinhas
Ao trabalhar com strings de várias linhas, você pode formatá-las com variáveis ou expressões. Para formatar uma string multilinha, você pode usar o símbolo $ para interpolação de strings.
int age = 25;
string str = $@"Hello, I am {age} years old,
and I am learning
C# multiline strings!";Dim age As Integer = 25
Dim str As String = $"Hello, I am {age} years old,
and I am learning
C# multiline strings!"Usamos a interpolação de strings para incluir o valor da variável age dentro da string multilinha.
Convertendo strings de várias linhas em strings de linha única
Às vezes, você pode precisar converter strings multilinha em strings de uma única linha. Para conseguir isso, você pode usar o método Replace para substituir as quebras de linha por um espaço ou qualquer outro caractere desejado.
string multilineString = @"This is a
multiline string
in C#.";
string singleLineString = multilineString.Replace(Environment.NewLine, " ");Dim multilineString As String = "This is a
multiline string
in C#."
Dim singleLineString As String = multilineString.Replace(Environment.NewLine, " ")Substituímos as quebras de linha na string multilinha por um espaço, resultando em uma string de uma única linha.
Manuseio de cordas longas
Às vezes, strings muito longas podem ser difíceis de ler em seu código. Para tornar o código mais legível, você pode dividir strings longas em várias linhas usando o operador +.
string longString = "This is a very long string that " +
"needs to be split across " +
"multiple lines for better readability.";Dim longString As String = "This is a very long string that " & "needs to be split across " & "multiple lines for better readability."Dividimos a string longa de linha única em três partes e as concatenamos usando o operador +, tornando o código mais legível.
Criando literais de string multilinha com literais de string brutos
Em C# 10, foi introduzido um novo recurso chamado literais de string brutos. Estas nos permitem criar literais de string multilinha sem usar o símbolo @. Para criar um literal de string bruta, colocamos a string entre aspas triplas ("""). As strings literais brutas preservam todos os caracteres, incluindo quebras de linha, dentro das aspas triplas. Por exemplo:
string str = """This is a
multiline string
using raw string literals in C# 10.""";Dim str As String = """This is a multiline string using raw string literals in C# 10."""Criamos uma string multilinha usando literais de string brutos. Observe o uso de aspas triplas para delimitar a sequência de caracteres.
Escapando caracteres em literais de string bruta
Assim como acontece com strings literais, talvez precisemos incluir aspas duplas em nossas strings brutas. Para isso, podemos usar aspas duplas. Por exemplo:
string str = """This is a
""multiline""
string using raw string literals in C# 10.""";Dim str As String = """This is a ""multiline"" string using raw string literals in C# 10."""Incluímos aspas duplas na string literal bruta usando aspas duplas.
Combinando literais de strings literais e textuais brutas
Em alguns casos, podemos querer combinar as características de literais de string tanto na forma literal quanto na forma bruta. Isso pode ser feito usando o símbolo @ seguido por aspas triplas.
string str = @"""This is a
multiline string
using both verbatim and raw string literals in C# 10.""";Dim str As String = """This is a
multiline string
using both verbatim and raw string literals in C# 10."""Neste exemplo, criamos uma string multilinha usando literais de string tanto na íntegra quanto em formato bruto. Observe o uso do símbolo @ seguido por aspas triplas.
Utilizando strings multilinha para gerar PDFs no IronPDF
IronPDF é uma biblioteca PDF .NET leve, projetada especificamente para desenvolvedores web. Facilita a leitura, a escrita e a manipulação de arquivos PDF, sendo capaz de converter todos os tipos de arquivos em conteúdo PDF, e você pode usá-lo em seus projetos .NET , tanto para desktop quanto para a web. A melhor parte: é grátis para experimentar em um ambiente de desenvolvimento.
Veja como utilizar uma string HTML multilinha para criar um arquivo PDF no IronPDF:
string name = "John";
string age = "25";
string content = $@"<!DOCTYPE html>
<html>
<body>
<h1>Hello, {name}!</h1>
<p>You are {age} years old.</p>
<p>This is a
multiline string
used to generate a PDF
with IronPDF and dynamic content.</p>
</body>
</html>";
// Create a new PDF document using IronPDF
var pdfDocument = new IronPdf.ChromePdfRenderer();
pdfDocument.RenderHtmlAsPdf(content).SaveAs("c://BioData.pdf");Dim name As String = "John"
Dim age As String = "25"
Dim content As String = $"<!DOCTYPE html>
<html>
<body>
<h1>Hello, {name}!</h1>
<p>You are {age} years old.</p>
<p>This is a
multiline string
used to generate a PDF
with IronPDF and dynamic content.</p>
</body>
</html>"
' Create a new PDF document using IronPDF
Dim pdfDocument = New IronPdf.ChromePdfRenderer()
pdfDocument.RenderHtmlAsPdf(content).SaveAs("c://BioData.pdf")Neste exemplo, usamos a interpolação de strings para incluir as variáveis name e age dentro de nossa string multilinha, tornando nosso conteúdo PDF dinâmico e personalizável. Criamos uma string multilinha com o conteúdo que desejávamos no PDF. Em seguida, instanciamos a classe ChromePdfRenderer do namespace IronPDF e usamos o método RenderHtmlAsPdf para converter o conteúdo da string multilinha em um documento PDF. Por fim, salvamos o documento PDF em um arquivo chamado "BioData.pdf".
Conclusão
E essa foi uma breve visita ao versátil mundo das strings multilinhas. Agora que você é um profissional em strings multilinhas em C#, pode começar a implementá-las em seus projetos - como no exemplo com IronPDF acima.
Está interessado em adquirir o IronPDF? Você pode começar com nosso teste gratuito de 30 dias do IronPDF . Além disso, é totalmente gratuito para uso em desenvolvimento, permitindo que você realmente veja do que ele é capaz. E se você gostar do que vê, a IronPDF começa com preços a partir de $999 para uma licença IronPDF. Para economizar ainda mais, confira o pacote Iron Suite , onde você adquire todas as nove ferramentas do Iron Software pelo preço de duas. Boa programação!


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.
Artigos relacionados


