Aspose.Words Textdatei-Prozessor für .NET
Der **Aspose.Words Text File Processor für .NET ** ist eine leichte API, die sich auf plain-text-Szenarien konzentriert .txt
, programmatische Einstellungen durchführen (Insert, löschen, ersetzen) und Save Back to TXT mit präziser Kontrolle über Coding , BOM undLine Endings – ideal für Dienstleistungen, ETL Jobs und CI/CD Pipelines.
Es funktioniert auf Windows, Linux und macOS mit .NET Framework, .Net Core/5/6+, oder Mono.
Installation und Setup
- Installieren Sie Aspose.Words von NuGet.
- Bewerben Sie Ihre Lizenz bei Startups (siehe Metered Licensing ).
- Überprüfungssystemanforderungen in der Installationsguide .
unterstützte Szenarien: ** Dateiwege und ** Streams (empfohlen für Web/Cloud).
Schneller Start
Erstellen einer TXT-Datei (UTF‐8, CRLF)
using Aspose.Words;
using Aspose.Words.Saving;
using System.Text;
var doc = new Document();
var builder = new DocumentBuilder(doc);
builder.Writeln("Paragraph 1.");
builder.Writeln("Paragraph 2.");
var txt = new TxtSaveOptions
{
Encoding = new UTF8Encoding(encoderShouldEmitUTF8Identifier: true), // with BOM
ParagraphBreak = "\r\n" // Windows EOL
};
doc.Save("Output.txt", txt);
Laden Sie eine TXT mit explicit encoding, fügen Sie Text hinzu, speichern Sie als LF
using Aspose.Words;
using Aspose.Words.Loading;
using Aspose.Words.Saving;
using System.Text;
var load = new TxtLoadOptions { Encoding = Encoding.UTF8 };
var doc = new Document("Input.txt", load);
var builder = new DocumentBuilder(doc);
builder.MoveToDocumentEnd();
builder.Writeln("");
builder.Writeln("Appended by Aspose.Words.");
var txt = new TxtSaveOptions
{
Encoding = new UTF8Encoding(encoderShouldEmitUTF8Identifier: false), // UTF‑8 no BOM
ParagraphBreak = "\n" // Unix EOL
};
doc.Save("Updated.txt", txt);
Eigenschaften und Funktionalität
Dokumenterzeugung
- Beginnen Sie mit einem weißen Textdokument im Gedächtnis.
- Setzen Sie die **Default-Coding ** und EOL -Strategie beim Speichern.
- Optional schreiben Sie den Header/Footer Kommentare vor Körpertext.
Laden von bestehenden TXT
- Laden Sie von path , stream oder byte[] mitautodetekt oder einer gezwungenen Codierung.
- Erhaltung oder Normalisierung von Linienbrechen (CRLF / LF / CR) auf Ladung und / oder Speicherung.
- Stream sehr große Dateien, um die Speicher stabil zu halten.
Text Manipulation
- Übertragen Sie die Inhalte über das bekannte Dokument → Abschnitt → Absatz → Run -Modell.
- Einfügen, hinzufügen oder löschen Sie Text an präzisen Orten – keine manuelle Offset-Mathe.
- Durchführen bulk find/replace über das gesamte Dokument oder abgelegte Rangen.
- Teilen / Mischen von Absätzen durch gewöhnliche Delimitierer.
Sparen auf TXT
- Speichern Sie auf Datei oder **Stream ** mit ausgewählter Coding (UTF‐8/UTP‐16/ASCII/etc.).
- Kontrollieren **BOM ** Emissionen und ParagraphBreak (EOL) ausdrücklich.
- Übersetzen oder zu einem Zielstrom schreiben, den Sie verwalten.
Anschlüsselung & i18n
- Vollständige ** Unicode** Unterstützung.
- Transparente Fallbacks für Legacy-Code-Seiten beim Lesen.
- Entdecken und bewahren Bomben auf der Last, es sei denn, sie übertrieben wird.
Stream-First APIs
- Use
Stream
→Stream
für Webdienste und Cloud-Funktionen. - Einfach mit S3/Blob SDKs und in-Memory Pipelines integrieren.
Performance
- Lean Objektmodell für reiches Text.
- Lassere Operationen minimieren Zuschüsse.
- Thread-Safe Reading: Synchronisierung des Schreibens beim Teilen von Ressourcen.
Gemeinsame Rezepte
Regex Find/Replace (Kollapse mehrerer Räume)
using System.Text.RegularExpressions;
using Aspose.Words;
using Aspose.Words.Replacing;
var doc = new Document("input.txt");
var opts = new FindReplaceOptions { MatchCase = false };
doc.Range.Replace(new Regex(@"\s{2,}"), " ", opts);
doc.Save("cleaned.txt");
2) Stream→Stream (Windows‐1252 bis UTF‐8 LF)
using (var input = File.OpenRead("legacy.txt"))
using (var output = File.Create("normalized.txt"))
{
var load = new Aspose.Words.Loading.TxtLoadOptions
{
Encoding = Encoding.GetEncoding(1252)
};
var doc = new Document(input, load);
var save = new Aspose.Words.Saving.TxtSaveOptions
{
Encoding = new UTF8Encoding(false), // no BOM
ParagraphBreak = "\n"
};
doc.Save(output, save);
}
3) Normalisierung von Line Endings (CRLF → LF)
var d = new Document("crlf.txt");
var save = new Aspose.Words.Saving.TxtSaveOptions { ParagraphBreak = "\n" };
d.Save("lf.txt", save);
Tipps & Best Practices
- Vorzugsweise stream-basierte APIs für große Dateien und Web-Apps.
- Always set coding on load & save, um mojibake zu vermeiden.
- Batch-Edit in der Speicher; Save once um I/O zu reduzieren.
- Normalisieren Sie EOL auf Ladung, umzuwandeln Sie auf Ziel Eol auf Sparen.
- Verwenden Sie regex ersetzen für komplexe Reinigungen in einem Pass.
- In langfristigen Dienstleistungen überwachen Sie gemessenes Gebrauch und bewältigen Sie die Quote freundlich.
FAQ
**Besitzt TXT Tabellen, Bilder oder Stile?**No. TXT ist klares Text; Fortgeschrittene Formatierung ist flatteniert.
**Kann ich auf eine bestehende Datei hinzufügen, ohne zu übertreiben?**Öffnen Sie ein FileStream in Append-Modus und schreiben Sie das gespeicherte Ausgang an. Stellen Sie sicher, dass Sie bei Bedarf eine vorherige Neulinie hinzufügen.
**Wie kann ich die Endlinie wählen?**Set TxtSaveOptions.ParagraphBreak
zu "\r\n"
(Windows oder "\n"
(UNIX und MACOS).
**Wie kann ich die UTF-8 BOM deaktivieren?**Use new UTF8Encoding(false)
in TxtSaveOptions.Encoding
.
**Ist Office oder Notepad ++ erforderlich?**No. Aspose.Words ist standalone.