Hur man exporterar och sparar Word-dokument i .NET

Hur man exporterar och sparar Word-dokument i .NET

Denna guide visar hur man exporterar och sparar ett Word-dokument med Aspose.Words FOSS för .NET: spara med ett härlett eller explicit format, konfigurera OOXML-sparalternativ, exportera till Markdown, exportera till vanlig text och upptäcka ett fils format innan det konverteras. Aspose.Words FOSS för .NET finns tillgängligt via NuGet eller genom att bygga från källkoden.

Steg-för-steg-guide

Steg 1: Hämta biblioteket

Klona förrådet och bygg Aspose.Words.sln i Release-konfiguration, lägg sedan till en projektreferens till Aspose.Words.csproj från ditt eget .NET-projekt, som beskrivs i den Installationsguiden. Lägg till using Aspose.Words; längst upp i alla filer som sparar dokument.


Steg 2: Spara med ett härlett eller explicit format

Document.Save(fileName) härleder målformatet från filens filändelse. Save(fileName, saveFormat) gör formatet explicit oavsett filändelse genom att ta ett SaveFormat enum-värde, och Save(fileName, saveOptions) (eller de matchande Stream överlagringarna) tar en SaveOptions subklass för format-specifik kontroll. SaveOptions.CreateSaveOptions(saveFormat) är en statisk fabrik som returnerar den matchande alternativ-subklassen med sina standardvärden redan satta för en given SaveFormat. Denna version sparar fullständigt både till och från DOCX, DOCM, DOTX, DOTM och Flat OPC (plus deras makro-aktiverade och mall-varianter), samt Markdown och vanlig text.


Steg 3: Konfigurera OOXML-exportalternativ

OoxmlSaveOptions konfigurerar sparande till någon av Open XML-varianterna. Dess SaveFormat-egenskap väljer specifikt DOCX, DOCM, DOTX, DOTM eller Flat OPC; Password sätter ett öppet lösenord på den sparade filen, oberoende av Document.Protects redigeringsbegränsning; Compliance väljer OOXML:s strikthetsnivå; och CompressionLevel / Zip64Mode styr den underliggande ZIP-paketeringen. Konstruera en med new OoxmlSaveOptions(saveFormat) eller via SaveOptions.CreateSaveOptions(saveFormat).


Steg 4: Exportera till Markdown

MarkdownSaveOptions styr en Markdown-export: ListExportMode och LinkExportMode reglerar hur listor och hyperlänkar renderas, ImagesFolder / ImagesFolderAlias styr var extraherade bilder placeras och hur de refereras, ExportImagesAsBase64 bäddar in dem inline istället för att skriva separata filer, och TableContentAlignment påverkar genererad tabellmarkup. Skicka en MarkdownSaveOptions-instans till Document.Save(fileName, saveOptions) med ett .md filnamn, eller ange dess SaveFormat explicit.


Steg 5: Exportera till vanlig text

TxtSaveOptions (via dess delade bas TxtSaveOptionsBase, även använd av MarkdownSaveOptions) styr export av vanlig text: Encoding anger teckenkodningen, ParagraphBreak anger radslutstecken, MaxCharactersPerLine radbryter långa rader, SimplifyListLabels normaliserar listpunkter och siffror till vanliga tecken, och PreserveTableLayout håller tabellkolumner justerade med mellanslag.


Steg 6: Detektera ett format innan konvertering

Innan en fil av okänt format konverteras, returnerar FileFormatUtil.DetectFileFormat(fileName) en FileFormatInfo med det detekterade LoadFormat. Kombinera den med FileFormatUtil.LoadFormatToSaveFormat(loadFormat) för att kontrollera om det formatet kan rundresas genom denna utgåvas stödda format innan Document.Save anropas. Vissa SaveFormat enum-medlemmar finns för API s fullständighet men namnformaten i denna reducerade, öppna källkodsutgåva implementeras inte som en fungerande läsare eller skrivare; håll dig till DOCX/DOCM/DOTX/DOTM/Flat OPC-familjen samt Markdown och vanlig text för pålitlig output.

Vanliga problem och lösningar

Save(fileName) skriver fel format. Filändelsen matchar inte det avsedda formatet. Använd Save(fileName, saveFormat) or Save(fileName, saveOptions) för att göra formatet explicit istället för att förlita sig på filändelsen.

Sparad OOXML-fil öppnas inte med ett lösenord. OoxmlSaveOptions.Password var inte inställd innan sparandet. Konstruera en OoxmlSaveOptions, sätt Password, och skicka den till Save.

Markdown-export sprider bildfiler oväntat. Default MarkdownSaveOptions beteendet extraherar bilder till separata filer. Sätt ExportImagesAsBase64 = true för en självständig Markdown-fil, eller sätt ImagesFolder för att styra var bilderna placeras.

Export av ren text förlorar tabellkolumnens justering. TxtSaveOptions.PreserveTableLayout är kvar på standardinställningen. Ställ in PreserveTableLayout = true innan du sparar.

Vanliga frågor

Hur sparar jag i ett specifikt format oavsett filändelse?

Anropa Save(fileName, saveFormat) med ett explicit SaveFormat-värde, eller Save(fileName, saveOptions) med en matchande SaveOptions-subklass.

Vilka format round-tripar i båda riktningarna i den här utgåvan?

DOCX, DOCM, DOTX, DOTM, Flat OPC (plus deras makroaktiverade och mallvarianter), Markdown och vanlig text.

Hur skyddar jag en sparad fil med lösenord så att den inte ens kan öppnas?

Ställ in Password på en OoxmlSaveOptions-instans och skicka den till Document.Save(fileName, saveOptions).

Hur styr jag radslutet i en exporterad textfil?

Ställ in ParagraphBreak på en TxtSaveOptions-instans innan du sparar.

Hur kontrollerar jag en fils format innan jag konverterar den?

Anropa FileFormatUtil.DetectFileFormat(fileName) och läs det returnerade FileFormatInfo.LoadFormat.

Se även

 Svenska