如何使用 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。此作法可防止在寫入檔案時出現「找不到路徑」的錯誤。

為何使用 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 授權(免費試用或暫時授權亦可用於測試)

設定 GroupDocs.Conversion for .NET

使用您偏好的套件管理員安裝 GroupDocs.Conversion 函式庫。

NuGet 套件管理員主控台:

Install-Package GroupDocs.Conversion -Version 25.3.0

.NET CLI:

dotnet add package GroupDocs.Conversion --version 25.3.0

Pro tip: 安裝後,將授權檔案加入專案,並在應用程式啟動時載入,以避免執行時授權錯誤。

基本初始化

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 前目的路徑已存在。此單行程式碼會在資料夾不存在時建立它,若已存在則靜默成功,避免在寫入檔案時拋出「找不到目錄」例外。它亦會回傳完整路徑,方便用於記錄或後續處理。

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 為中心的工作流程中提升整體生產力。

探索其他格式——例如 DGN → PDF 或 DGN → DOCX——只需將 TxtConvertOptions 替換為相應的選項類別。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 參考提供大量程式碼範例與設定指南。


最後更新: 2026-07-06
測試環境: GroupDocs.Conversion .NET 25.3.0
作者: GroupDocs

相關教學