Aspose.Words پردازندهٔ فایل متنی برای .NET

Aspose.Words Text File Processor برای .NET یک API سبک است که بر روی plain-text scenarios تمرکز دارد .txt, ویرایش های برنامه نویسی را انجام دهید (نمایش، حذف، جایگزین) و بازگرداندن به TXT با کنترل دقیق رمزگذاری ، BOM و خط پایان – ایده آل برای خدمات، کارهای ETL و لوله های CI/CD.

کار بر روی ویندوز، لینوکس و macOS با .NET Framework، .Net Core/5/6+ یا Mono.

نصب و نصب

  • نصب Aspose.Words از NuGet.
  • مجوز خود را در استارتاپ درخواست کنید (نگاه کنید به Licensing ).
  • بررسی سیستم مورد نیاز در راهنمای نصب .

سناریوهای پشتیبانی شده: ** مسیرهای فایل و ** جریان ها (برای وب / ابر توصیه می شود).

شروع سریع

ایجاد یک فایل 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);

یک TXT با رمزگذاری صریح، اضافه کردن متن، ذخیره به عنوان 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);

ویژگی ها و عملکرد

ایجاد اسناد

  • از یک سند متن سفید در حافظه شروع کنید.
  • در هنگام صرفه جویی، استراتژی ** کدگذاری پیش فرض ** و ** EOL** را تنظیم کنید.
  • به صورت اختیاری قبل از نوشتن متن بدن، عنوان و پیاده روی ** نظرات** را بنویسید.

بارگذاری موجود TXT

  • بارگذاری از **path ** ، **stream ** یا **byte[] ** با coding auto-detect و یا یک coding اجباری.
  • حفظ یا عادی سازی شکاف های خطی (CRLF / LF / CR) بر روی بار و / یا ذخیره.
  • فایل های بسیار بزرگ را برای حفظ حافظه پایدار پخش کنید.

دستکاری متن

  • از طریق مدل آشنا Document → Section → Paragraph → Run عبور کنید.
  • وارد کنید، اضافه کنید یا متن را در مکان های دقیق حذف کنید – بدون ریاضیات دستی.
  • انجام ** bulk find/replace** در سراسر کل سند یا شاخه های پوشیده شده.
  • تقسیم / ترکیب پاراگراف ها توسط تقسیم کننده های سفارشی.

صرفه جویی در TXT

  • ذخیره به فایل و یا ** جریان ** با انتخاب ** رمزگذاری** (UTF-8 / UTF-16 / ASCII / و غیره.).
  • کنترل **BOM ** انتشار و ParagraphBreak (EOL) به صراحت.
  • ترجمه یا نوشتن به یک جریان هدف که مدیریت می کنید.

کدگذاری & i18n

  • پشتیبانی کامل Unicode.
  • بازخورد شفاف برای صفحات کد میراث در هنگام خواندن.
  • کشف و نگهداری بمب تا زمانی که بیش از حد بارگذاری نشده باشد.

جریان اول APIs

  • استفاده StreamStream برای خدمات وب و قابلیت های ابر.
  • به راحتی با S3/Blob SDK ها و لوله های حافظه یکپارچه می شود.

Performance

  • Lean object model برای متن صاف.
  • کارآفرینان به حداقل می رسند.
  • Thread-safe reading؛ همگام سازی نوشتن هنگام به اشتراک گذاری منابع.

دستورالعمل های مشترک

1) Regex یافتن / جایگزین (مجموعه فضاهای چندگانه)

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) جریان→ جریان (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) استاندارد خط پایان (CRLF → LF)

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

راهنمایی ها و بهترین شیوه ها

  • ترجیح می دهم API های مبتنی بر جریان برای فایل های بزرگ و برنامه های وب.
  • همیشه کدگذاری را بر روی بار و ذخیره تنظیم کنید تا از mojibake اجتناب کنید.
  • Batch در حافظه ویرایش می شود؛ ** یک بار ذخیره کنید** برای کاهش I/O.
  • EOL را در بار استاندارد کنید، به هدف Eol در ذخیره تبدیل کنید.
  • استفاده از regex جایگزین برای تمیز کردن پیچیده در یک گذر.
  • در خدمات طولانی مدت، نظارت بر استفاده اندازه گیری شده و مدیریت کوتا با مهربانی.

FAQ

**آیا TXT میزها، تصاویر یا سبک ها را حفظ می کند?**TXT یک متن صاف است؛ فرمت پیشرفته فلانت شده است.

**آیا می توانم به یک فایل موجود بدون نوشتن بیش از حد پیوستم?**یک FileStream را در حالت افزونه باز کنید و خروجی ذخیره شده را به آن بنویسید اطمینان حاصل کنید که در صورت لزوم یک نوار قبلی اضافه کنید.

**چگونه می توانم خط پایان را انتخاب کنم?**تنظیمات TxtSaveOptions.ParagraphBreak برای "\r\n" (ویندوز یا "\n" (تغییرمسیر از UNIX و MACOS).

**چگونه می توانم بمب UTF-8 را غیرفعال کنم?**استفاده new UTF8Encoding(false) در TxtSaveOptions.Encoding.

**آیا Office یا Notepad ++ مورد نیاز است?**آکاایران: کلمات یکنواخت هستند.

 فارسی