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
- Installer Aspose.Words à partir de NuGet.
- Appliquez votre licence au start-up (voir Metered Licensing ).
- Recherche des exigences du système dans le Guide d’installation .
**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
Stream
→Stream
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.