การทํางานกับ DOC Reader

การทํางานกับ DOC Reader

การทํางานกับ DOC Reader

Aspose.Words FOSS for Python includes a dedicated reader for legacy Word 97-2003 .doc แฟชั่น DocFileReader class สารพัดรูปแบบไบนารี OLE2 และผลิต Light Document Model (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 โดยตรง

สําหรับการควบคุมระดับต่ํา, instantiate DocFileReaderCore และเรียกวิธีการโหลดของมัน:

from aspose.words_foss.doc_reader.doc_file_reader_core import DocFileReaderCore

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

DocFileReaderCore มีวิธีการเข้าข้อมูล 3 วิธี คือ:

Methodประเภทการเข้ากรณีการใช้งาน
load_file(filepath)เส้นทางไฟล์อ่านจากดิสก์
load_stream(stream)วัตถุแบบไฟล์อ่านจากการอัพโหลดหรือเครือข่าย
load_bytes(data)bytesอ่านจากพัฟเฟอร์ในความจํา

การสร้างแบบ Light Document Model

หลังจากการชาร์ต, โทรหา 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 function จะส่งเครื่องอ่านที่เหมาะสมขึ้นอยู่กับขยายไฟล์:

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 สําหรับข้อความ, ข้อตกลง และการจัดรูปพื้นฐาน.

ปัญหาทั่วไป

IssueCauseแก้ไข
load_file() การเพิ่มเงิน FileNotFoundErrorเส้นทางไฟล์ผิดพลาดยืนยันเส้นทางมีก่อนการโทร
ข้อความที่คัดแยกหลังการอุดหนานไฟล์ไม่ใช่ไบนารี OLE2 ที่ถูกต้องยืนยันว่าไฟล์เป็นของแท้ .doc รูปแบบ, ไม่เปลี่ยนชื่อ .docx
การออกแบบที่ขาดใน outputมีคุณสมบัติ DOC ที่มีความก้าวหน้าที่ยังไม่ได้รับการสนับสนุนCheck limitations.md สําหรับลักษณะที่ไม่สนับสนุน

FAQ

ความแตกต่างระหว่าง DocFileReader และ DocPfileReadingCore คืออะไร?

DocFileReaderCore รับจัดการการพารัสไบนารีระดับต่ําของรูปแบบ OLE2. DocFileReader ยกมันออกไปด้วยการเพิ่ม to_light_document() วิธีที่ผลิต LDM ครบวงจร Document เหมาะสําหรับการแปลง.

ผมสามารถอัตราการโหลดไฟล์ DOC จากสตรีมได้หรือไม่?

ใช่ ใช้ DocFileReaderCore.load_stream(stream) หรือส่งวัตถุแบบไฟล์ เป็นประโยชน์สําหรับแอพลิเคชั่นเว็บที่โหลดไฟลูด์เป็นสตรีม.

DOC Reader ทําการจัดการไฟล์ที่คุ้มครองด้วยคําลับหรือไม่?

ป้องกันผ่านคําลับ .doc ไฟล์ไม่ได้รับการสนับสนุนในปัจจุบัน. ตัวอ่านจะยกเว้นถ้าไฟล์ถูกเข้ารหัส.


คําอธิบายการพบบ่อย API

ประเภท / กลไกDescription
DocFileReaderเครื่องอ่าน DOC ครบวงจรพร้อมความสามารถในการสร้าง LDM
DocFileReader.to_light_document()เปลี่ยนแปลงข้อมูล DOC ที่พาราสเป็น LDM Document
DocFileReaderCoreคอร์เลสเตอร์สําหรับไฟล์ไบนารี Word 97-2003 (.doc)
DocFileReaderCore.load_file(filepath)การอัตราบรรจุไฟล์ DOC จากเส้นทาง
DocFileReaderCore.load_stream(stream)อัตราการอัพโหลดไฟล์ DOC จากสตรีม
DocFileReaderCore.load_bytes(data)การอัตราบรรจุไฟล์ DOC จากพัฟเฟอร์ไบต์
DocumentFormatReaderระบบสัมผัสโปรโตคอลสําหรับเครื่องอ่านเอกสารทั้งหมด
create_reader(path)โรงงานที่ส่งกลับตัวอ่านที่ถูกต้องสําหรับขยายไฟล์

See Also

 ภาษาไทย