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

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 StreamStream 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.

 Deutsch