Pemproses fail teks Aspose.Words untuk .NET

Aspose.Words Text File Processor untuk .NET adalah API ringan yang memberi tumpuan kepada scenario teks rata .txt, menjalankan pengeditan programmatik (menyertakan, memadamkan, menggantikan), dan save back kepada TXT dengan kawalan yang tepat atas coding, BOM dan line endings-ideal untuk perkhidmatan, pekerjaan ETL, dan CI/CD paip.

Tidak memerlukan Microsoft Office. berfungsi pada Windows, Linux, dan macOS dengan .NET Framework, .Net Core/5/6+, atau Mono.

Pemasangan dan Setup

Skenario yang disokong: laluan fail dan streams (disyorkan untuk web/cloud).

Permulaan Cepat

Mencipta fail TXT (UTF-8 dan 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);

Muat naik TXT dengan pengekodan eksplisit, melampirkan teks, simpan sebagai 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);

Ciri-ciri dan fungsi

Penciptaan dokumen

  • Mulakan dengan dokumen teks putih dalam memori.
  • Setkan kod lalai dan EOL strategi apabila anda menjimatkan.
  • Secara opsional tulis tajuk / kaki ** komen** sebelum teks badan.

Mengisi TXT yang sedia ada

  • Muat turun daripada path, stream atau byte[] dengan coding auto-detect atau pengekodan paksa.
  • Mengekalkan atau menormalkan pecahan garis (CRLF / LF / CR) pada beban dan / atau penyimpanan.
  • Mengalirkan fail yang sangat besar untuk mengekalkan memori yang stabil.

Manipulasi teks

  • Melalui kandungan melalui model yang biasa Dokumen → Bahagian → Paragraf → Run.
  • Masukkan, melampirkan, atau memadamkan teks di lokasi yang tepat—tidak ada matriks offset manual.
  • Menjalankan bulk mencari/menggantikan di seluruh dokumen atau rangkaian tertutup.
  • Membahagikan/menggabungkan perenggan oleh delimiters tersuai.

Menjimatkan kepada TXT

  • Simpan ke fail atau stream dengan pilihan coding (UTF‐8/UTP‐16/ASCII/etc.).
  • Mengawal pelepasan BOM dan ParagraphBreak (EOL) secara eksplisit.
  • Menulis semula atau menulis kepada aliran sasaran yang anda pentadbiran.

Pengenalan & i18n

  • Sokongan penuh Unicode.
  • Failback yang telus untuk halaman kod warisan semasa membaca.
  • Mengesan dan menyimpan Bom di atas beban kecuali berlebihan.

Stream-Pertama API

  • Use StreamStream untuk perkhidmatan web dan fungsi awan.
  • Mudah disepadukan dengan SDK S3/Blob dan paip dalam memori.

Performance

  • Model objek Lean untuk teks rata.
  • Operasi mudah meminimumkan peruntukan.
  • Thread-safe bacaan; menyegerakkan menulis apabila berkongsi sumber.

Resep yang biasa

1) Regex Cari / Tukar (collapse pelbagai ruang)

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 kepada 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) Normalize Line Endings (CRLF → LF)

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

Tips & Amalan Terbaik

  • Lebih suka API berasaskan aliran untuk fail besar dan aplikasi web.
  • Selalu tetapkan pengekodan pada beban & simpan untuk mengelakkan mojibake.
  • Batch mengedit dalam memori; save once untuk mengurangkan I/O.
  • Menormalkan EOL pada beban, menukar kepada sasaran Eol pada simpanan.
  • Gunakan regex mengganti untuk pembersihan yang kompleks dalam satu laluan.
  • Dalam perkhidmatan jangka panjang, memantau penggunaan yang diukur & mengendalikan kuota dengan baik.

FAQ

**Adakah TXT menyimpan jadual, imej, atau gaya?**No. TXT ialah teks yang rata; pemformatan lanjutan dilapisi.

**Bolehkah saya melampirkan ke fail yang sedia ada tanpa menulis berlebihan?**Buka FileStream dalam mod lampiran dan tulis output yang disimpan ke dalamnya. pastikan anda menambah baris baru yang terdahulu jika perlu.

**Bagaimana saya boleh memilih garis akhir?**Set TxtSaveOptions.ParagraphBreak kepada "\r\n" (Windows atau "\n" (Bahasa Melayu dan MacOS).

**Bagaimana saya boleh mematikan UTF-8 BOM?**Use new UTF8Encoding(false) dalam TxtSaveOptions.Encoding.

**Adakah Office atau Notepad++ diperlukan?**No. Aspose.Words ialah kata yang berbeza.

 Melayu