Aspose.Words Elaboratore di file di testo per .NET

Le Aspose.Words Text File Processor pour .NET est une API légère axée sur les scénarios de texte plain .txt, effectuer des éditions programmatiques (insérer, supprimer, remplacer) et sauvegarder à TXT avec un contrôle précis sur encodage , BOM etfinitions de ligne – idéal pour les services, les emplois ETL et les pipelines CI/CD.

Il fonctionne sur Windows, Linux et macOS avec .NET Framework, .Net Core/5/6+, ou Mono.

Installation et configuration

**Scenarios soutenus: ** itinéraires de fichiers et streams (recommandés pour web/cloud).

Début rapide

Créer un fichier TXT (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);

Télécharger un TXT avec codage explicite, ajouter le texte, sauvegarder en tant que 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);

Caractéristiques et fonctionnalités

Création de document

  • Commencez par un texte blanc dans la mémoire.
  • Configurez **codage par défaut ** et EOL la stratégie lors de l’épargne.
  • Écrivez optionnellement le titre/footer commentaires avant le texte corporel.

Télécharger le TXT existant

  • Télécharger à partir de path , stream ou byte[] aveccodage auto-découvre ou un codage forcé.
  • Conserver ou normaliser les ruptures de ligne (CRLF / LF / CR) sur charge et / ou sauvegarde.
  • Utilisez des fichiers très grands pour maintenir la mémoire stable.

La manipulation du texte

  • Passez le contenu via le modèle connu Document → Section → Paragraphe → Exécution.
  • Insérer, appliquer ou supprimer le texte à des endroits précis – pas de mathématiques manuelles.
  • Performez ** bulk find/replace** sur l’ensemble du document ou des rangs sculptés.
  • Diviser / mélanger les paragraphes par des délimitateurs personnalisés.

Économiser à TXT

  • Enregistrer dans le fichier ou stream avec l’encodage choisi (UTF‐8/UTP‐16/ASCII/etc.).
  • Contrôler explicitement les émissions **BOM ** et ParagraphBreak (EOL.
  • Réécrire ou écrire à un flux cible que vous gérez.

Création & i18n

  • Soutien complet Unicode.
  • Des faillites transparentes pour les pages de code d’héritage lors de la lecture.
  • Détecter et préserver bombe sur la charge, sauf en surcharge.

Première APIs

  • Utiliser StreamStream pour les services Web et les fonctions cloud.
  • Intégrer facilement avec des SDK S3/Blob et des pipelines en mémoire.

Performance

  • Lean Object Modèle pour le texte plain.
  • Les opérations faciles minimisent les allocations.
  • Thread-safe lecture ; synchroniser l’écriture lors de la partage des ressources.

Recettes communes

Regex Find / Replace (collapse des espaces multiples)

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 à 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) Normaliser les finitions de ligne (CRLF → LF)

var d = new Document("crlf.txt");
var save = new Aspose.Words.Saving.TxtSaveOptions { ParagraphBreak = "\n" };
d.Save("lf.txt", save);

Conseils et meilleures pratiques

  • Préférez les API basées sur le courant pour les fichiers grands et les applications Web.
  • Tout le temps, définissez le codage sur charge et sauvegarde pour éviter le mojibake.
  • Batch édite dans la mémoire; sauvez une fois pour réduire l’I/O.
  • Normalisez EOL sur charge, convertez à cibler Eol sur sauvetage.
  • Utilisez regex remplacement pour des nettoyages complexes en un seul passage.
  • Dans les services à long terme, surveiller l’usage mesuré et gérer la quota avec grâce.

FAQ

**TXT conserve-t-il des tables, des images ou des styles?**No. TXT est un texte plain ; le formatage avancé est flatté.

**Puis-je joindre un fichier existant sans trop écrire?**Ouvrez un FileStream dans le mode d’ajout et écrivez la sortie sauvée à celui-ci. Assurez-vous de ajouter une nouvelle ligne précédente si nécessaire.

**Comment puis-je choisir la ligne de fin?**Sélection TxtSaveOptions.ParagraphBreak à "\r\n" (Windows ou "\n" (Unix et MacOS).

**Comment puis-je désactiver le UTF-8 BOM?**Utiliser new UTF8Encoding(false) dans TxtSaveOptions.Encoding.

**Est-il nécessaire Office ou Notepad?**No. Aspose.Words est indépendant.

 Français