IRONSOFTWAREHOME
开发者更新

C# String 方法(开发者用法)

Jacob Mellor,Team Iron 的首席技术官
Jacob Mellor
Updated: 2026年4月23日

在C#中处理PDF不仅涉及渲染和格式化内容,还包括操纵文本以满足您的需求。 无论您是在提取、搜索还是编辑PDF中的文本,了解如何利用C# 字符串方法可以显著提升您的工作流程。 在本文中,我们将探讨常见的C#字符串操作,它们如何应用于IronPDF,以及如何利用它们简化您的PDF处理任务。

使用IronPDF的字符串方法简介

C#提供了一系列字符串方法,允许您以多样的方式处理文本。 从基础操作如连接和替换到高级技术如正则表达式,这些方法在操作PDF中的内容时至关重要。

IronPDF是一个功能强大的库,用于在C#中处理PDF,与这些字符串函数无缝集成,为开发人员提供了灵活的工具集来处理PDF内容。 无论是需要提取文本、搜索模式,还是操纵内容,了解如何在IronPDF中使用C#字符串方法将帮助您实现目标。

IronPDF:一个强大的C# PDF库

C# 字符串方法(开发人员工作方式):图1

IronPDF是一个为.NET设计的强大PDF库,旨在简化PDF的创建、操作和自动化。 无论您是需要生成动态文档还是提取和编辑内容,IronPDF都提供了一种具有丰富功能的无缝解决方案。

主要功能

  • **HTML 转 PDF:**轻松将HTML 内容转换为样式完整的 PDF。 ***文本提取:**从现有 PDF 中提取和处理文本。
  • **PDF 编辑:**向 PDF 添加文本、图像和注释,或更新现有内容。 ***数字签名:**为 PDF 添加安全的数字签名。
  • **PDF/A 合规性:**确保您的 PDF 文件符合严格的归档标准。 ***跨平台支持:**可在 Windows、Linux 和 macOS 上的 .NET Framework、.NET Core 和 .NET 5/6 上运行。

IronPDF提供了一套全面的工具,轻松高效地处理您的所有PDF需求。 立即通过免费试用开始探索其强大的功能,看看IronPDF如何简化您的PDF工作流程!

Basic String Operations in C#

连接

连接是处理字符串时最简单的操作之一。 在C#中,有多种方法可以将两个或多个字符串连接在一起,最常用的方法是**+运算符和String.Concat()**。

string text1 = "Hello";
string text2 = "World";
string result = text1 + " " + text2;  // Output: "Hello World"

C# 字符串方法(开发人员工作方式):图2

当使用IronPDF时,您可能需要连接字符串以创建完整的文档或操纵提取内容中的文本。 例如,您可以在应用格式之前将PDF文档的标题和正文作为字符串合并在一起:

var pdfText = "Header: " + extractedHeader + "\n" + "Body: " + extractedBody;

这演示了如何通过简单的字符串连接将指定的子字符串合并为一个整体。 正如我们稍后将看到的,这种连接的字符串可以用于为PDF构建动态内容。

PDF输出:

C# 字符串方法(开发人员工作方式):图3

PDF输出字符串

在使用IronPDF创建新文档时,文本字符串的指定索引位置对于确定例如标题或正文在页面上的显示位置至关重要。 通过这种方式,当前的字符串对象可以直接影响布局决策。

PDF中的文字格式化

一旦您提取并操纵了文本,您可能需要在将其添加到新的PDF之前对其进行格式化。 IronPDF允许您使用RenderHtmlAsPdf转换功能设置字体样式、大小,甚至定位,C#字符串方法可以帮助您生成动态格式化内容。

例如,您可以通过用HTML标签连接字符串来创建动态的页眉和正文内容:

string htmlContent = "<h1>" + headerText + "</h1>" + "<p>" + bodyText + "</p>";

然后可以使用IronPDF将此HTML内容转换为精美格式的PDF:

PdfDocument pdf = HtmlToPdf.ConvertHtmlString(htmlContent);
pdf.SaveAs("formattedDocument.pdf");

PDF输出:

C# 字符串方法(开发人员工作方式):图4

这种方法允许您轻松生成动态生成内容的PDF,同时确保正确的文本格式。 通过从动态内容生成一个新的字符串,您可以将格式化的HTML内容字符串数组传递给IronPDF,确保PDF输出符合您的要求。

搜索指定的子字符串

在很多情况下,您需要检查字符串中是否包含指定的子字符串。 Contains() 方法对此非常有用,因为它根据指定字符串是否存在于目标字符串中返回 true 或 false。

string documentText = "Invoice Number: 12345";
bool containsInvoiceNumber = documentText.Contains("Invoice Number");

找到字符的指定位置

要在字符串中找到指定的字符,IndexOf()方法特别有用。 它返回字符或子字符串在字符串中首次出现的指定位置。

string str = "Invoice Number: 12345";
int position = str.IndexOf('5'); // Returns the position of the first '5'

这在使用IronPDF从文本中提取动态数据(如数字或日期)时非常方便。

PDF自动化的高级字符串技术

正则表达式

对于更复杂的文本提取,正则表达式(Regex)提供了一种强大的模式匹配工具。 使用Regex,您可以从PDF中的非结构化文本中提取结构化数据,如日期、发票号,甚至是电子邮件地址。

using System.Text.RegularExpressions;

string text = "Date: 02/11/2025";
Match match = Regex.Match(text, @"\d{2}/\d{2}/\d{4}");
if (match.Success)
{
    string date = match.Value;  // Output: "02/11/2025"
}

正则表达式对于需要捕获的具有可变内容或特定格式的文档特别有用。 结合使用IronPDF提取的原始文本和正则表达式,有助于自动化处理表单、数据验证和报告等任务。

大文本的StringBuilder

当处理大块文本时,如多页内容或数据驱动报告,使用StringBuilder而不是常规的字符串连接效率更高。 StringBuilder针对需要附加或修改大量文本而不会创建多个中间字符串实例的场景进行了优化。

StringBuilder sb = new StringBuilder();
sb.AppendLine("Header: " + headerText);
sb.AppendLine("Content: " + bodyText);
string finalText = sb.ToString();

IronPDF能处理大型PDF文档,将StringBuilder集成到您的工作流中可以确保在生成或操纵PDF中的大型文本时获得更好的性能。

检查字符串实例是否匹配模式

Equals()方法检查两个字符串实例是否匹配,意味着它们的值相同。 这对于PDF内容中的验证或比较非常有用。

string str1 = "Invoice";
string str2 = "Invoice";
bool isMatch = str1.Equals(str2); // Returns true as both have the same value

在IronPDF中,这可以应用于比较提取的文本,以确保它符合所需的格式或值。

处理Unicode字符

在处理PDF中的文本时,您可能需要操纵或检查指定的Unicode字符。 IndexOf()方法也可以用于寻找字符串中特定Unicode字符的位置。

string unicodeStr = "Hello * World";
int unicodePosition = unicodeStr.IndexOf('*'); // Finds the position of the unicode character

PDF 输出

C# 字符串方法(开发人员工作方式):图5

此外,将字符串转换为Unicode字符数组在处理不同语言或符号的文本时非常有用:

char[] unicodeArray = "Hello * World".ToCharArray();

这允许更精确地操纵字符,特别是在处理多语言或格式不同的PDF时。

子字符串的提取与操作

处理字符串时的另一个强大功能是能够提取指定的子字符串。 Substring()方法让您可以从指定的索引位置选择字符串的部分。 这对于从PDF内容中提取有意义的数据至关重要。

string sentence = "Total: $45.00";
string totalAmount = sentence.Substring(7); // Extracts "$45.00"

这种技术在处理发票或任何形式的结构化文本时非常有用。

使用C#字符串方法生成PDF

让我们把所有东西放在一起,看看如何使用C#字符串方法生成PDF的更全面的例子。 本例将演示如何提取文本、利用字符串方法对其进行操作,然后生成格式化的PDF。

示例:创建自定义发票PDF

假设我们需要动态生成发票PDF,提取信息如客户姓名、地址和购买的商品。 我们将使用各种字符串方法来格式化和操作数据,然后生成最终的PDF。

using IronPdf;
using System;
using System.Text;

class Program
{
    static void Main()
    {
        // Sample customer data
        string customerName = "John Doe";
        string customerAddress = "123 Main Street, Springfield, IL 62701";
        string[] purchasedItems = { "Item 1 - $10.00", "Item 2 - $20.00", "Item 3 - $30.00" };
        
        // Start building the HTML content for the invoice
        StringBuilder invoiceContent = new StringBuilder();
        
        // Adding the header
        invoiceContent.AppendLine("<h1>Invoice</h1>");
        invoiceContent.AppendLine("<h2>Customer Details</h2>");
        invoiceContent.AppendLine("<p><strong>Name:</strong> " + customerName + "</p>");
        invoiceContent.AppendLine("<p><strong>Address:</strong> " + customerAddress + "</p>");
        
        // Adding the list of purchased items
        invoiceContent.AppendLine("<h3>Items Purchased</h3>");
        invoiceContent.AppendLine("<ul>");
        foreach (var item in purchasedItems)
        {
            invoiceContent.AppendLine("<li>" + item + "</li>");
        }
        invoiceContent.AppendLine("</ul>");
        
        // Calculate total cost (basic manipulation with string methods)
        double totalCost = 0;
        foreach (var item in purchasedItems)
        {
            string priceString = item.Substring(item.LastIndexOf('$') + 1);
            double price = Convert.ToDouble(priceString);
            totalCost += price;
        }
        
        // Adding total cost
        invoiceContent.AppendLine("<p><strong>Total Cost:</strong> $" + totalCost.ToString("F2") + "</p>");
        
        // Convert the HTML to PDF using IronPDF
        var pdf = HtmlToPdf.ConvertHtmlString(invoiceContent.ToString());
        
        // Save the generated PDF
        pdf.SaveAs("Invoice_Johndoe.pdf");
        Console.WriteLine("Invoice PDF generated successfully.");
    }
}

解释

***数据设置:**我们从客户样本数据开始,包括客户的姓名、地址和购买的商品清单。

  • StringBuilder:我们使用StringBuilder来构建发票的 HTML 内容。这使我们能够高效地追加内容的各个部分(标题、客户详细信息、购买项目列表和总费用),而无需创建多个中间字符串实例。

    *字符串操作:

    • 对于每个商品,我们提取价格(在$符号之后)并计算总成本。这是通过使用Substring()获取指定的子字符串,以及Convert.ToDouble()转换为数字值来实现的。

    • 然后将总成本格式化为两位小数,展示出干净和专业的显示。

  • **HTML 转 PDF:在创建 HTML 格式的发票内容后,我们使用 IronPDF 的RenderHtmlAsPdf()**方法生成 PDF。 结果存储为Invoice_Johndoe.pdf。

通过结合使用IronPDF强大的HTML到PDF转换和C#字符串操作技术,您可以自动创建动态文档,无论是发票、报告还是合同。

PDF输出

C# 字符串方法(开发人员工作方式):图6

结论

掌握在使用IronPDF时的C#字符串方法可以简化您的PDF处理任务,无论是提取、编辑还是格式化内容。 通过利用字符串连接、子字符串提取和正则表达式等技术,您可以全面控制PDF中的文本,实现更动态和高效的工作流程。

IronPDF提供强大的PDF操控能力,与C#字符串方法无缝工作。 无论您是在处理文本提取、搜索模式还是自动化内容生成,将IronPDF与C#字符串操作结合使用将为您节省时间和精力。

想看看IronPDF如何帮助您的PDF自动化吗? 现在尝试免费试用,探索它的全部潜力!

Jacob Mellor,Team Iron 的首席技术官
首席技术官

Jacob Mellor 是 Iron Software 的首席技术官,也是一位开创 C# PDF 技术的有远见的工程师。作为 Iron Software 核心代码库的原始开发者,他从公司成立之初就开始塑造公司的产品架构,与首席执行官 Cameron Rimington 一起将公司转变为一家拥有 50 多名员工的公司,为 NASA、特斯拉和全球政府机构提供服务。

相关文章

Key in blue circle

立即获取免费的 30 天试用版密钥。

Your trial license will be sent to your email address

无任何限制。100% 解锁。无需信用卡。

OR
bullet_checked无需信用卡或创建账户无任何限制。100% 解锁。无需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
预约您的免费现场演示
Booking Badge

深受全球数百万工程师信赖

Iron Software 的客户徽标
获取您的无义务咨询
填写下面的表格或通过sales@ironsoftware.com
您的资料将始终保密。
深受全球数百万工程师信赖
Iron Software 的客户徽标
立即获取您的免费30 天试用密钥。
无需信用卡或创建账户
C# 用于 PDF 的 NuGet 库
通过 NuGet 安装

版本: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. 在解决方案资源管理器中,右键点击引用,管理 NuGet 包
  2. 选择浏览并搜索 “IronPDF”
  3. 选择包并安装
C# PDF DLL
下载 DLL

版本: 2026.9

或在此处下载 Windows 安装程序。

  1. 下载并解压 IronPDF 到您的解决方案目录中的 ~/Libs 之类的位置
  2. 在 Visual Studio 解决方案资源管理器中,右键点击引用。选择浏览,“IronPDF.dll”

$999 起