مستندات HotXLS

کلاس TXLSForwardReader

TXLSForwardReader یک سطح یکپارچهٔ پیش‌بینی‌شده و مبتنی بر فراخوانی برای ورودی XLS کلاسیک، XLSX مدرن، CSV و TSV ارائه می‌دهد بدون آنکه مدل شی کامل کتاب کار ساخته شود

قالب ورودی

TXLSForwardFormat تشخیص خودکار را انتخاب می‌کند یا تجزیهٔ XLS، XLSX، CSV یا TSV را اجبار می‌کند

ReadFile یک منبع نام‌دار را باز می‌کند و ReadStream از موقعیت جاری جریان فراخواننده می‌خواند و پس از بازگشت آن موقعیت را بازیابی می‌کند

پیش‌بینی و مرزهای سطر

IncludeColumn یک ستون مبتنی بر صفر را به مجموعه پیش‌بینی با زمان ثابت اضافه می‌کند، ClearColumnProjection خروجی تمام-ستون‌ها را بازیابی می‌کند و HasColumnProjection گزارش می‌دهد که آیا فشار-پایین فعال است

FirstRow و LastRow مرزهای سطر مبتنی بر یک را قبل از ارسال فراخوانی اعمال می‌کنند و به تجزیه‌گرها اجازه می‌دهند پس از بازه درخواستی متوقف شوند

فراخوانی‌ها و تبدیل مقدار

OnSheetنام هر کاربرگ را دریافت می‌کند و ممکن است یک برگه را رد کند یا خواندن کامل را لغو کند
OnCellسطر، ستون، نمایه سبک، نوع عادی‌سازی‌شده، مقدار خام و متن فرمول را برای هر سلول پیش‌بینی‌شده دریافت می‌کند
DetectDatesاز قالب‌های عددی کتاب کار برای شناسایی مقادیر تاریخ و زمان استفاده می‌کند
DetectTextTypesفیلدهای CSV و TSV را در جایی که بدون ابهام باشد به انواع اسکالر پشتیبانی‌شده تبدیل می‌کند
PreserveRichTextاجرای قالب‌بندی‌شده و بار آوایی را در جایی که قالب منبع از آن‌ها پشتیبانی می‌کند حفظ می‌کند
ValueSeparatorجداکننده فیلد متن را وقتی تشخیص قالب مناسب نیست بازنویسی می‌کند

وضعیت تکمیل

CellCount سلول‌های ارسال‌شده را گزارش می‌دهد و Aborted لغو توسط فراخواننده را از تکمیل عادی متمایز می‌کند

مثال

Reader := TXLSForwardReader.Create;
try
  Reader.FirstRow := 2;
  Reader.IncludeColumn(0);
  Reader.IncludeColumn(4);
  Reader.OnSheet := ReadSheet;
  Reader.OnCell := ReadCell;
  Reader.ReadFile('large-input.xlsx', xffAuto);
finally
  Reader.Free;
end;

انتخاب API پخش

هنگامی که یک مسیر برنامه باید چندین قالب را بپذیرد از TXLSForwardReader استفاده کنید، برای چیدمان مخصوص XLSX، متن غنی و رویدادهای کاربرگ موازی TXLSDirectReader را استفاده کنید، یا برای تکرار سطر XLSX مبتنی بر کشیدن TXLSRowCursor را استفاده کنید

همچنین ببینید