DOC nach DOCX in C# konvertieren

DocToDocxConverter liest eine .doc-Datei aus Word 97-2003 und schreibt ein modernes .docx-Paket. Text, Tabellen und Zeichenformatierung wie Fettdruck bleiben unversehrt erhalten.

using DocToolkit;

byte[] doc = File.ReadAllBytes("input.doc");
byte[] docx = DocToDocxConverter.Convert(doc);
File.WriteAllBytes("output.docx", docx);

Was es braucht

  • Keinen Browser, weder headless noch sonst.
  • Keine Office-Installation und kein LibreOffice.
  • Keine nativen Dateien: nur verwalteten Code.
  • Kein Netzwerk zur Laufzeit, außer Sie verlangen es.

Gut zu wissen

  • Synchron: DocToDocxConverter.Convert nimmt die .doc-Datei als byte[] entgegen und gibt die .docx-Datei als byte[] zurück.
  • Es lehnt eine .doc-Datei mit Bildern, Zeichnungen oder Formularfeldern ab, die eine .docx-Datei nicht aufnehmen kann, statt sie stillschweigend zu verwerfen. Setzen Sie LegacyDocOptions.AllowContentLoss, um den Verlust bewusst in Kauf zu nehmen.
  • ConvertWithReport gibt dieselben Bytes zurück und dazu eine Liste dessen, was der Import nicht übernehmen konnte.
  • Nur Import: Es liest .doc und schreibt nie eine solche Datei.

Installation

dotnet add package Ank.DocToolkit

NuGetDokumentationGitHub