العمل مع قراءة DOC

العمل مع قراءة DOC

Aspose.Words FOSS for Python includes a dedicated reader for legacy Word 97-2003 .doc الملفات. DocFileReader تقوم الطبقة بتحليل النمط الثنائي OLE2 وتنتج نموذجاً وثائقياً خفيفاً (LDM) يمكن التعامل معه أو تحويله إلى تنسيقات أخرى.


تحميل ملف DOC

استخدام DocFileReader لفتح … .doc ملف من القرص وتحويله إلى Document:

import aspose.words_foss as aw

doc = aw.Document("report.doc")
print(f"Paragraphs: {len(doc.all_paragraphs)}")

المجلس الوزاري Document المُفوضين من البناة إلى create_reader(),، الذي يختار DocFileReader تلقائياً على أساس .doc تمديد.


استخدام DocFileReaderCore مباشرةً

لضبط المستوى السفلي، تحديد الموقع. DocFileReaderCore وتدعو طرق الحمل:

from aspose.words_foss.doc_reader.doc_file_reader_core import DocFileReaderCore

reader = DocFileReaderCore()
reader.load_file("legacy.doc")

DocFileReaderCore يقدم ثلاثة طرق إدخال:

طريقةنوع الإدخالحالة الاستخدام
load_file(filepath)سلسلة مسار الملفاتقراءة من القرص
load_stream(stream)ملف مثل الكائنقراءة من تحميل أو سلسلة شبكة
load_bytes(data)bytesقراءة من عازل الذاكرة

بناء نموذج وثيقة الضوء

بعد التحميل، اتصل to_light_document() في DocFileReader لإنتاج LDM Document:

from aspose.words_foss.doc_reader.doc_file_reader import DocFileReader

reader = DocFileReader()
reader.load_file("input.doc")
ldm_doc = reader.to_light_document()

ويعتبر LDM التمثيل الداخلي المشترك بين جميع القراء (DocFileReader, DocumentReader, TextFileReader) بمجرد أن يكون لديك وثيقة LDM، يمكنك حفظها في أي تنسيق مخرج مدعوم.


بروتوكول DocumentFormatReader

جميع القراء تنفيذ المخططات. DocumentFormatReader بروتوكول، الذي يحدد الواجهة المشتركة: load_file(), load_stream(),، و load_bytes(). create_reader() وظيفة factory تعيد القارئ المناسب بناءً على امتداد الملف:

from aspose.words_foss.reader_factory import create_reader

reader = create_reader("data.doc")  # returns DocFileReader
reader.load_file("data.doc")

نصائح وأفضل الممارسات

  • استخدم المستوى العالي Document("file.doc") المكون لمعظم سير العمل إنه يتعامل مع اختيار القارئ تلقائياً.
  • استخدام DocFileReaderCore فقط عندما تحتاج إلى الوصول المباشر الى طبقة التحليل الثنائي.
  • للملفات التي تتلقى كـ: bytes (مثلًا ، من تحميضات HTTP) ، تفضل load_bytes() لتجنب كتابة ملفات مؤقتة.
  • يدعم قارئ DOC نفس الوفاء الجاري مثل قارئ Docx للنص، والفقرات، والتنسيق الأساسي.

القضايا الشائعة

القضيةالسببإصلاح
load_file() يرفع FileNotFoundErrorمسار الملف غير صحيحتحقق من وجود المسار قبل الاتصال
نص مشوش بعد التحميلالملف ليس ثنائي OLE2 صالحتأكيد أن الملف حقيقي .doc النمط، وليس إعادة تسمية .docx
تغيّب التنسيق في الناتجبعض ميزات DOC المتقدمة غير مدعومة بعدالتحقق limitations.md لميزات غير مدعومة

FAQ

ما هو الفرق بين DocFileReader و DocPaleReadingCore؟?

DocFileReaderCore يتعامل مع تحليل الثنائي منخفض المستوى لتنسيق OLE2. DocFileReader يمتد إلى ذلك بإضافة المادة التالية: to_light_document() طريقة تنتج LDM كاملة. Document مناسبة للتحويل.

هل يمكنني تحميل ملف DOC من التيار؟?

نعم، استخدمها. DocFileReaderCore.load_stream(stream) أو تمرير ملف مثل الكائن. هذا مفيد لتطبيقات الويب حيث يتم تحميل الملفات كتيار.

هل يقوم قارئ DOC بمعالجة الملفات المحمية بكلمة مرور؟?

محمية بكلمة مرور .doc الملفات غير مدعومة حالياً. سيقوم القارئ بإثارة استثناء إذا كان المستند مشفر.


ملخص مرجع API

الفئة / الطريقةوصف
DocFileReaderقارئ DOC كامل مع قدرة بناء LDM
DocFileReader.to_light_document()تحويل بيانات DOC المفصلة إلى وثيقة LDM
DocFileReaderCoreقارئ أساسي لملفات Word 97-2003 (.doc) الثنائية
DocFileReaderCore.load_file(filepath)تحميل ملف DOC من مسار
DocFileReaderCore.load_stream(stream)تحميل ملف DOC من تيار
DocFileReaderCore.load_bytes(data)تحميل ملف DOC من عداد المكبس البايت
DocumentFormatReaderواجهة البروتوكول لجميع قراء الوثائق
create_reader(path)مصنع يعيد القارئ الصحيح لموسع ملف
 العربية