.NET 幫助

C# 多行字串(開發人員如何使用)

發佈 2024年8月15日
分享:

當您開始學習C#時,字串是您最早學到的概念之一。如果您曾經組合過一個「Hello, World」!如果你已經熟悉了C#程序,那麼你已經與字符串打過交道了。

隨著你對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#."
VB   C#

字串 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#."
VB   C#

在這個範例中,字串 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!"
VB   C#

在這裡,我們將多行字串與單行字串名稱連接在一起。

格式化多行字串

在處理多行字串時,可以使用變數或表達式來格式化它們。要格式化多行字串,可以使用 '$' 符號進行字串插值。

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!"
VB   C#

我們使用字串插值在多行字串中包含年齡變數的值。

將多行字串轉換為單行字串

有時,您可能需要將多行字串轉換為單行字串。要實現這一點,您可以使用 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, " ")
VB   C#

我們將多行字符串中的換行符替換為空格,從而得到一個單行字符串。

處理長字串

有時,非常長的字串在程式碼中閱讀起來會很困難。為了使程式碼更易讀,你可以使用 '+' 運算符將長字串分成多行。

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.";
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

我們將長單行字符串拆分為三部分,並使用 '+' 運算符將它們連接起來,使代碼更具可讀性。

使用原始字符串字面量創建多行字符串字面量

在 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."""
VB   C#

我們使用原始字符串文字創建了一個多行字符串。注意使用三重引號來包含字符串。

在原始字符串字面量中轉義字符

與逐字字符串類似,我們可能需要在原始字符串字面量中包含雙引號。為此,我們可以使用雙雙引號。例如:

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."""
VB   C#

我們在原始字串常數中包含雙引號是透過使用雙雙引號來實現的。

結合逐字語法和原始字符串常量

在某些情況下,我們可能希望結合逐字語法和原始字符串常量的特性。這可以通過在三重引號之前使用「@」符號來完成。

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."""
VB   C#

在此示例中,我們使用逐字和原始字串文字來創建多行字串。請注意 '@' 符號後面跟著三重引號的用法。

使用多行字符串來生成 IronPDF 的 PDF

IronPDF 是一個專為網頁開發人員設計的輕量化 .NET PDF 資料庫。它使讀取、寫入和操作 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>";
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>";
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

// 创建一个新的 PDF 文档

var pdfDocument = new IronPdf.ChromePdfRenderer();

pdfDocument.RenderHtmlAsPdf(內容).SaveAs(「c://BioData.pdf」);

以下是該代碼運行時的樣子:

在此範例中,我們使用字串插值將名稱和年齡變數包含在我們的多行字符串中,讓我們的 PDF 內容變得動態且可自定義。我們創建了一個包含我們想要的 PDF 內容的多行字符串。然後,我們從 IronPDF 命名空間實例化 ChromePdfRenderer 類,並使用 RenderHtmlAsPdf 方法將多行字符串內容轉換成 PDF 文件。最後,我們將 PDF 文件保存為名為 “BioData.pdf” 的檔案。

結論

這就是多行字符串中多才多藝的世界簡要介紹。現在你已經是一個 C# 的多行字符串專家了,可以開始在你的項目中實施它們 - 就像上面的 IronPDF 範例一樣。

想要使用 IronPDF 嗎?你可以從我們的 30 天免費試用它也可以完全免費用於開發目的,讓您可以真正了解它的性能。如果您喜歡所見,IronPDF的價格低至 $749欲享受更多優惠,請查看 Iron Suite 在這裡,您可以以兩個的價格獲得全部九個Iron Software工具。祝編程愉快!

< 上一頁
Visual C++ 可再发行程序包是什麼
下一個 >
C# If(它如何為開發者工作)

準備開始了嗎? 版本: 2024.10 剛剛發布

免費 NuGet 下載 總下載次數: 10,993,239 查看許可證 >