如何使用 GroupDocs.Conversion .NET 将 DGN 文件转换为 TXT

介绍

您是否在寻找一种高效的方法来 create output folder C# 并将复杂的 DGN 文件转换为更易处理的 TXT 格式?许多建筑师、工程师和施工专业人员需要从 CAD 图纸中提取纯文本数据,以用于报告、数据分析流水线或与遗留系统的集成。本教程将指导您使用 GroupDocs.Conversion .NET 加载 DGN 文件,设置适当的输出目录,并生成干净的 TXT 文件——全部使用清晰、可投入生产的代码。

您将学习

  • 如何为 .NET 设置 GroupDocs.Conversion
  • 如何 create output folder C# 并指定转换文件的目标位置
  • 如何加载 DGN 文件并将其转换为 TXT
  • 关键配置选项,帮助您微调转换过程

快速答复

  • 哪个库处理 DGN 到 TXT 的转换? GroupDocs.Conversion .NET
  • 我需要许可证才能在生产环境使用吗? 是的,需要完整或临时许可证。
  • 我可以在 .NET 6 上运行吗? 当然——该库支持 .NET 5/6、.NET Core 3.1 和 .NET Framework 4.5+。
  • 如何在 C# 中创建输出文件夹? 在转换之前使用 Directory.CreateDirectory(path)
  • 典型的转换速度是多少? 将 200 页的 DGN 转换为 TXT 通常在标准服务器上不到 2 秒完成。

什么是 “create output folder C#”?

Create output folder C# 指的是在写入文件之前,以编程方式确保文件系统上存在目录,通常使用 System.IO.Directory.CreateDirectory。这可以防止在文件写入操作期间出现 “path not found” 错误。

为什么使用 GroupDocs.Conversion 进行 CAD 到 TXT 转换?

GroupDocs.Conversion 支持 50+ 输入和输出格式,包括 DGN、DWG 和 DXF,并且能够在不将整个文档加载到内存中的情况下处理高达 2 GB 的文件。其原生文本提取引擎保留图层名称、注释和属性数据,生成的 TXT 文件能够以 99 % 的保真度 复制原始图纸的文本内容。

前置条件

  • GroupDocs.Conversion .NET 库(版本 25.3.0 或更高)
  • Visual Studio 2022(或任何支持 C# 8.0+ 的 IDE)
  • .NET 6 SDK(或 .NET Core 3.1 / .NET Framework 4.5+)
  • 有效的 GroupDocs 许可证(免费试用或临时许可证可用于测试)

为 .NET 设置 GroupDocs.Conversion

使用您选择的包管理器安装 GroupDocs.Conversion 库。

NuGet Package Manager Console:

Install-Package GroupDocs.Conversion -Version 25.3.0

.NET CLI:

dotnet add package GroupDocs.Conversion --version 25.3.0

技巧提示: 安装后,将许可证文件添加到项目中,并在应用程序启动时加载,以避免运行时许可证错误。

基本初始化

Converter 类是 GroupDocs.Conversion 的核心组件,用于加载源文件并执行格式转换。

using System;
using GroupDocs.Conversion;

// Initialize the conversion handler
class Program
{
    static void Main()
    {
        var converter = new Converter("path/to/your/file.dgn");
        Console.WriteLine("Setup complete. Ready to convert!");
    }
}

实现指南

如何在 C# 中创建输出文件夹?

Directory.CreateDirectory 在指定路径不存在时会创建所有目录和子目录。

使用 Directory.CreateDirectory 确保在调用转换 API 之前目标路径已存在。此单行代码既能在文件夹缺失时创建它,又能在文件夹已存在时静默成功,从而消除文件写入期间的 “directory not found” 异常。它还返回完整路径,您可以将其用于日志记录或后续处理。

string outputFolder = Path.Combine(Environment.CurrentDirectory, "ConvertedFiles");
Directory.CreateDirectory(outputFolder);

加载并将 DGN 文件转换为 TXT

概述

此功能可让您加载 DGN 文件并将其转换为纯文本(TXT)表示,便于从建筑图纸中提取设计备注、元数据或嵌入的注释。

步骤 1:定义输出目录路径

指定转换后文件的保存位置。下面的示例在应用程序根目录下创建一个名为 ConvertedFiles 的文件夹。

string outputFolder = Path.Combine("YOUR_OUTPUT_DIRECTORY", "ConvertedFiles");
Directory.CreateDirectory(outputFolder); // Ensure directory exists

为什么: 定义专用的输出路径可以保持项目组织有序,并且更容易定位生成的 TXT 文件以进行后续处理。

步骤 2:设置转换选项

TxtConvertOptions 类保存转换所需的设置,允许您自定义换行符、编码以及是否包含隐藏图层。

var txtOptions = new TxtConvertOptions
{
    Encoding = Encoding.UTF8,
    IncludeHiddenLayers = false
};

它的作用: 该对象告诉转换器如何呈现文本表示,确保在不同 DGN 源之间获得一致的结果。

步骤 3:执行转换

使用先前定义的选项执行转换。lambda 表达式在运行时直接创建输出文件,避免了临时存储。

var convertOptions = new TextConvertOptions();

为什么:Save 使用 lambda 可让您完全控制输出流,这在将转换集成到 Web 服务或后台任务时尤为有用。

步骤 4:运行转换

最后,调用 Convert 方法,传入源 DGN 路径、目标格式和选项对象。

converter.Convert(() => File.Create(Path.Combine(outputFolder, "output.txt")), convertOptions);

为什么: 该方法在一次调用中处理所有底层解析、文本提取和文件写入,让您无需处理复杂的 CAD 内部细节。

常见问题及解决方案

  • 文件未找到错误: 确认 DGN 文件路径是绝对路径或相对于可执行文件的正确相对路径。
  • 权限问题: 确保应用程序在具有对输出文件夹写入权限的账户下运行。
  • 转换错误: 确认 GroupDocs.Conversion NuGet 包版本与许可证文件版本匹配;版本不匹配可能导致运行时失败。

实际应用

此转换功能可集成到:

  1. 数据提取: 从 DGN 图纸中提取文本注释,用于分析或报告。
  2. 互操作性: 将提取的文本输入 GIS 系统、BIM 数据库或仅接受纯文本输入的遗留 ERP 模块。
  3. 自动化工作流: 在 CI/CD 流水线中嵌入转换步骤,以自动从设计文件生成文档。

性能考虑

在处理大量 CAD 文件时,请牢记以下提示:

  • 优化资源使用: 监控内存消耗;GroupDocs 以流式模式处理文件,即使是数百页的图纸也能保持低内存占用。
  • 高效内存管理: 每次转换后释放 Converter 实例,以及时释放非托管资源。
  • 批量处理: 使用 Parallel.ForEach 并发转换多个 DGN 文件,但要限制并行度,以免耗尽 CPU 或 I/O 带宽。

资源

结论

恭喜!您已经学习了如何 create output folder C#、加载 DGN 文件并使用 GroupDocs.Conversion .NET 将其转换为 TXT。将这些步骤集成到您的应用程序中,您将简化数据提取、提升互操作性,并在以 CAD 为中心的工作流中显著提高整体生产力。

通过将 TxtConvertOptions 替换为相应的选项类,您可以探索其他格式——例如 DGN → PDF 或 DGN → DOCX。GroupDocs 套件提供统一的 API,覆盖超过 50 种文件类型,帮助您构建单一、可维护的转换引擎,适用于所有工程文档。

常见问题

Q: GroupDocs.Conversion 支持哪些文件格式?
A: 超过 50 种格式,包括 PDF、DOCX、XLSX、DGN、DWG、DXF 和 TXT。

Q: 转换 DGN 文件是否有大小限制?
A: 没有硬性限制;性能随可用 RAM 和 CPU 而伸缩。标准服务器上可可靠转换高达 2 GB 的文件。

Q: 我可以自定义输出 TXT 的文本编码吗?
A: 可以——在 TxtConvertOptions 中设置 Encoding 属性(例如 UTF‑8、ASCII)。

Q: 在生产环境中应如何处理转换错误?
A: 将转换调用包装在 try‑catch 块中,记录 ConversionException 详细信息,并可选择使用回退配置重试。

Q: 在哪里可以找到更多示例和 API 参考?
A: 官方文档和 API 参考提供了丰富的代码示例和配置指南。


Last Updated: 2026-07-06
Tested With: GroupDocs.Conversion .NET 25.3.0
Author: GroupDocs

相关教程