Πώς να εξάγετε και να αποθηκεύσετε έγγραφα Word στο .NET
Αυτός ο οδηγός δείχνει πώς να εξάγετε και να αποθηκεύσετε ένα έγγραφο Word με Aspose.Words FOSS για .NET: αποθήκευση με προεγκεκριμένη ή ρητή μορφή, διαμόρφωση επιλογών αποθήκευσης OOXML, εξαγωγή σε Markdown, εξαγωγή σε απλό κείμενο και ανίχνευση της μορφής ενός αρχείου πριν τη μετατροπή του. Aspose.Words FOSS για .NET είναι διαθέσιμο μέσω NuGet ή με κατασκευή από πηγαίο κώδικα.
Οδηγός βήμα-βήμα
Βήμα 1: Αποκτήστε τη βιβλιοθήκη
Κλωνοποιήστε το αποθετήριο και δημιουργήστε Aspose.Words.sln σε διαμόρφωση Release, στη συνέχεια προσθέστε μια αναφορά έργου σε Aspose.Words.csproj από το δικό σας έργο .NET, όπως περιγράφεται στο Οδηγός εγκατάστασης. Προσθέστε using Aspose.Words; στην κορυφή οποιουδήποτε αρχείου που αποθηκεύει έγγραφα.
Βήμα 2: Αποθήκευση με συμπερασμένη ή ρητή μορφή
Document.Save(fileName) συμπεραίνει τη μορφή προορισμού από την επέκταση του αρχείου. Save(fileName, saveFormat) καθιστά τη μορφή ρητή, ανεξαρτήτως επέκτασης, λαμβάνοντας μια τιμή enum SaveFormat, και το Save(fileName, saveOptions) (ή οι αντίστοιχες υπερφορτώσεις Stream) δέχεται μια υποκλάση SaveOptions για έλεγχο ειδικής μορφής. Το SaveOptions.CreateSaveOptions(saveFormat) είναι μια static factory που επιστρέφει την αντίστοιχη υποκλάση επιλογών με τις προεπιλογές της ήδη ορισμένες για ένα δεδομένο SaveFormat. Αυτή η έκδοση αποθηκεύει πλήρως τόσο σε όσο και από DOCX, DOCM, DOTX, DOTM και Flat OPC (συμπεριλαμβανομένων των παραλλαγών με μακροεντολές και προτύπων), καθώς και σε Markdown και απλό κείμενο.
Βήμα 3: Διαμόρφωση επιλογών εξαγωγής OOXML
OoxmlSaveOptions διαμορφώνει την αποθήκευση σε οποιαδήποτε από τις παραλλαγές του Open XML. Η ιδιότητα SaveFormat του επιλέγει συγκεκριμένα DOCX, DOCM, DOTX, DOTM ή Flat OPC· Password ορίζει έναν ανοιχτό κωδικό πρόσβασης στο αποθηκευμένο αρχείο, ανεξάρτητα από τον περιορισμό επεξεργασίας του Document.Protect; Compliance επιλέγει το επίπεδο αυστηρότητας του OOXML· και τα CompressionLevel / Zip64Mode ελέγχουν τη βασική συσκευασία ZIP. Δημιουργήστε ένα με new OoxmlSaveOptions(saveFormat) ή μέσω SaveOptions.CreateSaveOptions(saveFormat).
Βήμα 4: Εξαγωγή σε Markdown
MarkdownSaveOptions ελέγχει μια εξαγωγή σε Markdown: τα ListExportMode και LinkExportMode καθορίζουν πώς αποδίδονται οι λίστες και οι υπερσυνδέσεις, τα ImagesFolder / ImagesFolderAlias ελέγχουν πού πηγαίνουν οι εξαγόμενες εικόνες και πώς αναφέρονται, το ExportImagesAsBase64 τις ενσωματώνει ενσωματωμένα αντί να γράφει ξεχωριστά αρχεία, και το TableContentAlignment επηρεάζει το παραγόμενο σήμανση πινάκων. Περνέστε μια παρουσία MarkdownSaveOptions στο Document.Save(fileName, saveOptions) με ένα όνομα αρχείου .md, ή ορίστε το SaveFormat του ρητά.
Βήμα 5: Εξαγωγή σε απλό κείμενο
TxtSaveOptions (μέσω της κοινής βάσης του TxtSaveOptionsBase, που χρησιμοποιείται επίσης από MarkdownSaveOptions) ελέγχει την εξαγωγή απλού κειμένου: το Encoding ορίζει την κωδικοποίηση χαρακτήρων, το ParagraphBreak ορίζει τη συμβολοσειρά λήξης γραμμής, το MaxCharactersPerLine αναδιπλώνει τις μεγάλες γραμμές, το SimplifyListLabels κανονικοποιεί τα σημεία σφαίρας και τους αριθμούς λιστών σε απλούς χαρακτήρες, και το PreserveTableLayout διατηρεί τις στήλες των πινάκων ευθυγραμμισμένες χρησιμοποιώντας κενά.
Βήμα 6: Εντοπισμός μορφής πριν από τη μετατροπή
Πριν μετατραπεί ένα αρχείο άγνωστης μορφής, το FileFormatUtil.DetectFileFormat(fileName) επιστρέφει ένα FileFormatInfo με την εντοπισμένη LoadFormat. Συνδυάστε το με το FileFormatUtil.LoadFormatToSaveFormat(loadFormat) για να ελέγξετε εάν αυτή η μορφή μπορεί να περάσει πλήρως μέσω των μορφών που υποστηρίζει αυτή η έκδοση πριν καλέσετε το Document.Save. Ορισμένα μέλη της απαρίθμησης SaveFormat υπάρχουν για την πληρότητα του API, αλλά η μειωμένη, ανοιχτού κώδικα έκδοση δεν υλοποιεί λειτουργικό αναγνώστη ή συγγραφέα για αυτές· παραμείνετε στην οικογένεια DOCX/DOCM/DOTX/DOTM/Flat OPC συν το Markdown και το απλό κείμενο για αξιόπιστη έξοδο.
Συνηθισμένα προβλήματα και διορθώσεις
Save(fileName) γράφει σε λάθος μορφή. Η κατάληξη του αρχείου δεν ταιριάζει με τη ζητούμενη μορφή. Χρησιμοποιήστε Save(fileName, saveFormat) or Save(fileName, saveOptions) για να κάνετε το φορμά σαφές αντί να βασίζεστε στην επέκταση.
Το αποθηκευμένο αρχείο OOXML δεν θα ανοίξει με κωδικό πρόσβασης. OoxmlSaveOptions.Password δεν είχε οριστεί πριν από την αποθήκευση. Δημιουργήστε ένα OoxmlSaveOptions, ορίστε Password, και περάστε το σε Save.
Η εξαγωγή σε Markdown διασκορπίζει απροσδόκητα αρχεία εικόνας. Default MarkdownSaveOptions η συμπεριφορά εξάγει εικόνες σε ξεχωριστά αρχεία. Ορίστε ExportImagesAsBase64 = true για ένα αυτόνομο αρχείο Markdown, ή ορίστε ImagesFolder για να ελέγξετε πού τοποθετούνται οι εικόνες.
Η εξαγωγή σε απλό κείμενο χάνει την ευθυγράμμιση των στηλών του πίνακα. TxtSaveOptions.PreserveTableLayout παραμένει στην προεπιλογή του. Ορίστε PreserveTableLayout = true πριν από την αποθήκευση.
Συχνές ερωτήσεις
Πώς μπορώ να αποθηκεύσω σε συγκεκριμένη μορφή ανεξάρτητα από την κατάληξη του αρχείου;
Καλέστε το Save(fileName, saveFormat) με μια ρητή τιμή SaveFormat, ή το Save(fileName, saveOptions) με μια αντιστοιχία υποκατηγορίας SaveOptions.
Ποιοι τύποι υποστηρίζουν round-trip και προς τις δύο κατευθύνσεις σε αυτήν την έκδοση;
DOCX, DOCM, DOTX, DOTM, Flat OPC (συμπεριλαμβανομένων των εκδόσεων με ενεργοποιημένα μακροεντολές και των προτύπων), Markdown και απλό κείμενο.
Πώς μπορώ να προστατέψω με κωδικό πρόσβασης ένα αποθηκευμένο αρχείο ώστε να μην μπορεί καν να ανοιχθεί;
Ορίστε το Password σε ένα αντικείμενο OoxmlSaveOptions και περάστε το στο Document.Save(fileName, saveOptions).
Πώς μπορώ να ελέγξω τις λήξεις γραμμής σε ένα εξαγόμενο αρχείο κειμένου;
Ορίστε το ParagraphBreak σε ένα αντικείμενο TxtSaveOptions πριν αποθηκεύσετε.
Πώς μπορώ να ελέγξω τη μορφή ενός αρχείου πριν το μετατρέψω;
Καλέστε FileFormatUtil.DetectFileFormat(fileName) και διαβάστε το επιστρεφθέν FileFormatInfo.LoadFormat.