Aspose.Words Processador de fitxers de text per .NET

El processador de fitxers de text d’Aspose.Words per a .NET és una API lleugera centrada en els escenaris del text plau .txt, realitza editats programàtiques (insereix, esborra, substitueix), i Save Back a TXT amb control precís sobre encodament , BOM ifinals de línia - ideal per a serveis, llocs de treball ETL, i tubs CI/CD.

No requereix Microsoft Office. funciona en Windows, Linux i macOS amb .NET Framework, .Net Core/5/6+, o Mono.

Instal·lació i configuració

**Scenaris recolzats: ** pistes de fitxers i streams (recomanats per a web / núvol).

Inici ràpid

Crear un arxiu 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);

Carregar un TXT amb codificació explícita, afegir text, salvar com a 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);

Característiques i funcionalitat

Creació de documents

  • Comença amb un document de text blanc en la memòria.
  • Establir l’estratègia de codificació **default ** i EOL quan estalvi.
  • Opcionalment escriure el títol/footer ** comentaris** abans del text corporal.

Carregar el TXT existent

  • Carregar des de path , stream o byte[] ambcodificació auto-detectiu o un encodiment forçat.
  • Preservar o normalitzar les pauses de línia (CRLF / LF / CR) sobre càrrega i / o estalvi.
  • Fluir arxius molt grans per mantenir la memòria estable.

Manipulació de text

  • Passar el contingut a través del model familiar Document → Secció → Paràgraf → Run.
  • Insereix, afegeix o esborra el text en llocs precisos - sense matemàtiques de descompte manual.
  • Performan bulk trobar/reemplaçar a través de tot el document o rànquers descoberts.
  • Compartir / barrejar paràgrafs per delimitors personalitzats.

Estalvi a TXT

  • Salva’t al fitxer o stream amb el codificació triat (UTF-8 / UTF-16 / ASCII / etc.).
  • Controlar les emissions **BOM ** i ParagraphBreak (EOL) explícitament.
  • Escriure o escriure a un flux d’objectiu que gestioni.

Xerrada i i18n

  • Suport complet Unicode.
  • Fallbacks transparents per a pàgines de codi d’herència quan llegeix.
  • Detectar i preservar Bombes a càrrega, llevat que s’hagi superat.

Els primers APIs

  • Use StreamStream per a serveis web i funcions de núvol.
  • Integra fàcilment amb els SDKs S3/Blob i els tubs de memòria.

Performance

  • Model d’objectes Lean per a text pla.
  • Les operacions fàcils minimitzen les dotacions.
  • Lectura segura: Sincronitza l’escriptura quan comparteix recursos.

Receptes comuns

1) Regex trobar / reemplaçar (collapse múltiples espais)

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 a 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);
}

Normalitzar els terminis de línia (CRLF → LF)

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

Consells i millors pràctiques

  • Prefer stream-based APIs per a grans fitxers i aplicacions web.
  • Sempre configurar el codificació a càrrega i estalvi per evitar el mojibake.
  • El batxet s’edita en la memòria; salva una vegada per reduir el I/O.
  • Normalitza l’EOL en càrrega, converteix-se en el EOL de la meta en estalvi.
  • Utilitzeu regex substitute per a la neteja complexa en un sol pass.
  • En els serveis de llarga durada, monitoritza l’ús mesurat i gestiona la quota amb gràcia.

FAQ

**TXT conserva taules, imatges o estils?**No. TXT és text pla; la formatació avançada és flatenada.

**Puc afegir-me a un arxiu existent sense sobreescriure?**Obre un FileStream en el mode d’aplicació i escriure la sortida salvat a ell. Assegureu-vos que afegiràs una nova línia prèvia si cal.

**Com puc triar la línia finalitzada?**Set TxtSaveOptions.ParagraphBreak per a "\r\n" (Windows o "\n" (Unic i MacOS).

**Com puc desactivar el UTF-8 BOM?**Use new UTF8Encoding(false) En el TxtSaveOptions.Encoding.

**Es requereix Office o Notepad?**No. Aspose.Words és independent.

 Català