Arbeta med DOC Reader

Arbeta med DOC Reader

Aspose.Words FOSS for Python includes a dedicated reader for legacy Word 97-2003 .doc Filtrera . den DocFileReader Klasspars OLE2 binärt format och producerar en Light Document Model (LDM) som kan manipuleras eller konverteras till andra format.


Ladda upp en DOC-fil

Användning DocFileReader att öppna en .doc fil från en disk och konvertera den till en Document:

import aspose.words_foss as aw

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

Den Document Konstruktionsdelegater till create_reader(),som väljer DocFileReader automatiskt baserat på .doc förlängning .


Använd DocFileReaderCore direkt

För lägre kontrollnivå, instantiva DocFileReaderCore och kalla dess lastmetoder:

from aspose.words_foss.doc_reader.doc_file_reader_core import DocFileReaderCore

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

DocFileReaderCore Det finns tre inputmetoder:

MethodInträde typAnvänds fallet
load_file(filepath)Filvägen strängLäs från disk
load_stream(stream)Filliknande objektLäs från upload eller network stream
load_bytes(data)bytesLäs om in-memory buffer

Bygg en ljusdokumentmodell

Efter laddning, ringa to_light_document()DocFileReader Att producera en 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()

LSD är den interna representationen som delas mellan alla läsare (DocFileReader, DocumentReader, TextFileReaderNär du har ett LDM-dokument kan du spara det i något stöds utgångsformat.


DokumentFormatReader protokollet

Alla läsare genomför den DocumentFormatReader protokoll, som definierar det gemensamma gränssnittet: load_file(), load_stream(),och load_bytes(). den create_reader() Fabriksfunktionen returnerar lämplig läsare baserat på filutvidgningen:

from aspose.words_foss.reader_factory import create_reader

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

Tips och bästa praxis

  • Använd hög nivå Document("file.doc") konstruktor för de flesta arbetsflöden – den hanterar läsarevalet automatiskt.
  • Användning DocFileReaderCore endast när du behöver direkt tillgång till binär parsinglagret.
  • För filer som mottagits som bytes (t.ex. från HTTP-upload) föredrar att load_bytes() För att undvika att skriva tillfälliga filer.
  • DOC-läsaren stöder samma rundtur-troende som DOCX-läraren för text, stycken och grundläggande formatering.

Vanliga frågor

IssueCauseFixar
load_file() upphöjning FileNotFoundErrorFelaktig filvägenKontrollera vägen existerar innan du ringer
Gärande text efter laddningFilen är inte en giltig OLE2 binärBekräfta att filen är äkta .doc format, inte ett omnamn .docx
Saknar format i produktionenVissa avancerade DOC-funktioner stöds inte ännuCheck limitations.md För okomplicerade funktioner

FAQ

Vad är skillnaden mellan DocFileReader och DocfileRaderCore?

DocFileReaderCore Hantera den låga nivå binära parsningen av OLE2-format. DocFileReader utöka den genom att lägga till to_light_document() Metod som producerar en full LDM Document Lämplig för konvertering.

Kan jag ladda en DOC-fil från ett ström?

Ja, använd DocFileReaderCore.load_stream(stream) eller passera ett filliknande objekt. Detta är användbart för webbapplikationer där filer laddas upp som strömmar.

Handlar DOC-läsaren lösenordsskyddade filer?

Passwordskyddad .doc filer stöds inte för närvarande. läsaren kommer att ta ett undantag om filen är krypterad.


API Referens sammanfattning

Klass / MetodBeskrivning
DocFileReaderFull DOC-läsare med LDM byggförmåga
DocFileReader.to_light_document()Konverterar parsed DOC-data till ett LDM-dokument
DocFileReaderCoreKärnläsare för Word 97-2003 (.doc) binära filer
DocFileReaderCore.load_file(filepath)Ladda upp en DOC-fil från en väg
DocFileReaderCore.load_stream(stream)Ladda upp en DOC-fil från ett ström
DocFileReaderCore.load_bytes(data)Ladda upp en DOC-fil från en byte buffer
DocumentFormatReaderProtokolgränssnitt för alla dokumentläsare
create_reader(path)Fabrik som returnerar rätt läsare för en filutvidgning

Se även

 Svenska