.NET幫助 C# 多行字串(開發者的工作原理) Curtis Chau 更新日期:7月 28, 2025 Download IronPDF NuGet 下載 DLL 下載 Windows 安裝程式 Start Free Trial Copy for LLMs Copy for LLMs Copy page as Markdown for LLMs Open in ChatGPT Ask ChatGPT about this page Open in Gemini Ask Gemini about this page Open in Grok Ask Grok about this page Open in Perplexity Ask Perplexity about this page Share Share on Facebook Share on X (Twitter) Share on LinkedIn Copy URL Email article 當您開始學習 C# 時,字串是您學到的最早的概念之一。 如果您曾經組裝過 Hello, World! 程式,那麼您已經使用過字串。 隨著您對 C# 越來越熟悉,您的程式會變得更加複雜。 很快,您將開始處理多行跨度的字串。 如果您現在處於這個階段,那您很幸運,因為在本指南中,我們將解釋什麼是多行字串以及如何使用它們。 讓我們開始吧。 什麼是多行字串? 多行字串正如其名稱所示 - 是一個跨越多行的字串,與通常的單行字串形成對比。 在 C# 中多行字串是通過字串文字創建的,這是一系列用雙引號括起來的字符。 為了形成多行字串,我們需要使用一種特殊類型的字串文字,稱為逐字字串文字。 逐字字串的魔力 要在 C# 中創建多行字串文字,我們使用逐字字串。 逐字字串以前綴 @ 符號允許我們在不使用轉義序列的情況下包含換行符、特殊字符甚或空格。 以下是使用逐字字串的多行字串示例: string str = @"This is a multiline string in C#."; string str = @"This is a multiline string in C#."; Dim str As String = "This is a multiline string in C#." $vbLabelText $csharpLabel 字串 str 包含三行,每行由換行符分隔。 注意使用 @ 符號創建逐字字串。 在逐字字串中轉義字符 可能會有需要在逐字字串中包含雙引號的情況。 為此,您必須使用雙重引號。 例如: string str = @"This is a ""multiline"" string in C#."; string str = @"This is a ""multiline"" string in C#."; Dim str As String = "This is a ""multiline"" string in C#." $vbLabelText $csharpLabel 在這個示例中,字串 str 包含單詞 "multiline" 被雙引號括起,這是通過在逐字字串中使用雙重引號實現的。 串聯多行字串 您可能常常需要將多行字串與其他字串或值結合。 要將多行字串與其他字串值串聯,您可以像使用單行字串一樣使用 + 運算符。 string name = "John"; string str = @"Hello, " + name + @", Welcome to the world of C# multiline strings!"; 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!" $vbLabelText $csharpLabel 在這裡,我們將多行字串與單行字串 name 串聯起來。 格式化多行字串 在處理多行字串時,您可以使用變數或表達式對其進行格式化。 若要格式化多行字串,您可以使用 $ 符號進行字串插值。 int age = 25; string str = $@"Hello, I am {age} years old, and I am learning C# multiline 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!" $vbLabelText $csharpLabel 我們利用字串插值將 age 變量的值包括在多行字串中。 將多行字串轉換為單行字串 有時,您可能需要將多行字串轉換為單行字串。 為實現這一點,您可以使用 Replace 方法將換行符替換為空格或其他所需字符。 string multilineString = @"This is a multiline string in C#."; string singleLineString = multilineString.Replace(Environment.NewLine, " "); 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, " ") $vbLabelText $csharpLabel 我們將多行字串中的換行符替換為空格,結果變成了單行字串。 處理長字串 有時,非常長的字串在程式碼中很難閱讀。 為使程式碼更具可讀性,您可以使用 + 運算符將長字串分成多行。 string longString = "This is a very long string that " + "needs to be split across " + "multiple lines for better readability."; 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." $vbLabelText $csharpLabel 我們將長單行字串分成三個部分,並使用 + 運算符將它們串聯起來,使程式碼更具可讀性。 使用原始字串文字創建多行字串文字 在 C# 10 中,引入了一個新功能,稱為原始字串文字。 這些字串允許我們創建多行字串文字而不使用 @ 符號。 若要創建原始字串文字,我們將字串用三重引號 (""") 括起。 原始字串文字保留所有字符,包括三重引號內的換行符。 例如: string str = """This is a multiline string using raw string literals in C# 10."""; 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.""" $vbLabelText $csharpLabel 我們使用原始字串文字創建了一個多行字串。 注意使用三重引號來括起字串。 在原始字串文字中轉義字符 類似於逐字字串,我們可能需要在原始字串文字中包含雙引號。 為此,我們可以使用雙重引號。 例如: string str = """This is a ""multiline"" string using raw string literals in C# 10."""; 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.""" $vbLabelText $csharpLabel 我們使用雙重引號將雙引號包含在原始字串文字中。 結合逐字字串和原始字串文字 在某些情況下,我們可能希望結合逐字字串和原始字串文字的功能。 這可以通過使用 @ 符號後接三重引號來完成。 string str = @"""This is a multiline string using both verbatim and raw string literals in C# 10."""; 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.""" $vbLabelText $csharpLabel 在這個示例中,我們使用逐字字串和原始字串文字創建了一個多行字串。 注意使用 @ 符號後接三重引號。 使用多行字串在 IronPDF 中生成 PDF 文件 IronPDF 是一款輕量級 .NET PDF 庫,專為 web 開發者設計。 它使讀取、寫入和操作 PDF 文件變得簡單,可以將各種類型的文件轉換為 PDF 內容,您可以將其用於桌面和網頁的 .NET 專案中。 最好的部分 - 在開發環境中試用是免費的。 以下是如何利用 HTML 多行字串在 IronPDF 中創建 PDF 文件: 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"); 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") $vbLabelText $csharpLabel 在這個示例中,我們使用字串插值將 name 和 age 變量包括在我們的多行字串中,使我們的 PDF 內容動態且可定制。 我們創建了一個包含我們想要的 PDF 內容的多行字串。 然後我們從 IronPDF 命名空間實例化了 ChromePdfRenderer 類,並使用 RenderHtmlAsPdf 方法將多行字串內容轉換為 PDF 文件。 最後,我們將 PDF 文件保存為名為 "BioData.pdf"。 結論 這是多行字串多才多藝世界的一次快速瀏覽。 現在您已經是多行字串 C# 專家了,您可以開始在專案中實施它們 - 例如上面所述使用 IronPDF。 想要使用 IronPDF 嗎? 您可以從我們的IronPDF 30天免費試用版開始。 它的開發用途完全免費,因此您可以真正看到它的作用。 如果您喜歡您所見,IronPDF 的許可證起價低至 $799。 想要節省更多,請查看Iron Suite 套餐,您可以以兩個工具的價格獲得 Iron Software 的所有九個工具。 祝您編程愉快! 常見問題解答 如何在 C# 中創建多行字符串? 在 C# 中,你可以使用逐字字符串文字創建多行字符串,將字符串前綴 '@' 符號。這樣可以直接在字符串中包含換行符和特殊字符。 使用 C# 中的逐字字符串文字的目的是什么? C# 中的逐字字符串文字用來創建不需要轉義序列的字符串,保持換行符和特殊字符。它們用 '@' 符號表示,非常適合撰寫多行字符串。 如何處理逐字字符串中的特殊字符如雙引號? 在逐字字符串中,你可以通過使用雙倍加載雙引號,例如: '@"這是一個""多行""字符串。'允許你在字符串中包含雙引號。 C# 10 中的原始字符串文字是什么以及它們如何工作? C# 10 中引入的原始字符串文字允許創建多行字符串而不用 '@' 符號。它們用三個引號括起來,保留所有字符,包括換行符,完全如它們出現的樣子。 多行字符串可以如何應用於 PDF 生成? 多行字符串可以用來創建動態的 HTML 格式內容,接著可以使用像 IronPDF 這樣支持 HTML 到 PDF 轉換的庫將其轉換成 PDF 文檔。 什麼是字符串插值以及它如何應用於多行字符串? C#中的字符串插值允許使用 '$' 符號嵌入變量或表達式於字符串內。可以用於多行字符串無縫地包含動態內容。 如何在 C# 中將多行字符串轉換為單行字符串? 要將多行字符串轉換成單行字符串,可以使用 Replace 方法將換行符替換為空格或其他字符。例如:multilineString.Replace(Environment.NewLine, " ")。 為什麼開發者應在 .NET 應用程序中使用 PDF 生成庫? 專為 .NET 設計的 PDF 生成庫,如 IronPDF,簡化了讀取、寫入和操作 PDF 的過程。它們支持將各種文件類型轉換為 PDF,為桌面和 Web 應用程序提供了強大的工具集。 Curtis Chau 立即與工程團隊聊天 技術作家 Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。 相關文章 更新日期 9月 4, 2025 RandomNumberGenerator C# 使用RandomNumberGenerator C#類可以幫助將您的PDF生成和編輯項目提升至新水準 閱讀更多 更新日期 9月 4, 2025 C#字符串等於(它如何對開發者起作用) 當結合使用強大的PDF庫IronPDF時,開關模式匹配可以讓您構建更智能、更清晰的邏輯來進行文檔處理 閱讀更多 更新日期 8月 5, 2025 C#開關模式匹配(對開發者來說是如何工作的) 當結合使用強大的PDF庫IronPDF時,開關模式匹配可以讓您構建更智能、更清晰的邏輯來進行文檔處理 閱讀更多 Visual C++ 重新分發包是什麼C# If(開發者的工作原理)