![]() |
Word-Dok ohne Word verändern...
Hallo,
ich würde gerne Word-Dokumente "ausfüllen" OHNE Word zu verwenden. Wenn im Word Dokument der Text <<Name>> oder <<Ort>> oder <<Gewicht>> steht - sollte es durch einen Datenbankeintrag ersetzt werden Wenn Ein Dokument als "Word als XML" vorhanden ist - ist es kein Problem (in Memo einlesen -> Stringreplace machen -> wieder abspeichern) Aber dann habe ich ein XML mit dem keiner so recht was anfangen will .. besser wäre natürlich ein Dokumententyp Ps. Opendokument: im Quelltext eines Dokuments kann ich nix ändern .. das schaut so Binär aus? Hat jemand eine Idee wie ich das besser machen könnte? Ligrü und vielen Dank Erich |
AW: Word-Dok ohne Word verändern...
Sind es denn DOCX Dateien?
DOCX sind gezippte Dateien, die man mit Delphi-Bordmitteln extrahieren, ändern und wieder speichern kann. |
AW: Word-Dok ohne Word verändern...
Hallo mjustin
ich habe gerade ein text.docx in test.zip umbenannt .. und siehe da :shock::shock: - es hat erfolgreich ungezipped und mir einen ordner erstellt mit div subfoldern.. Ich hab test/word/document.xml eingesehen - und da steht der Text vom Worddokument drinnen Wenn ich nun den Text im document.xld ändere und die ganzen ordner dann wieder zippe und als "docx" umbenenne - ist das dann eine saubere und stabile Lösung? Vielen Dank für Hinweise Erich |
AW: Word-Dok ohne Word verändern...
Im Prinzip ist das ja auch eine ZIP ... einfach nur mit der "falschen" Endung.
mit 7-Zip läst sich das auch ganz einfach machen * gewünschte Datei extrahieren * diese Datei bearbeiten * und dann die Datei in der "ZIP" updaten/replacen ![]() |
AW: Word-Dok ohne Word verändern...
Eine ZIP-Komponente Deiner Wahl ins Programm aufnehmen.
Aus der ZIP-Datei (*.docx) die gewünschte XML in 'nen Stream extrahieren. Diesen Stream in einen TStrings(-Nachfahren) per LoadFromStream laden. Änderungen vornehmen. TStrings(-Nachfahren) per SaveToStream in 'nen Stream kopieren. Diesen Stream per ZIP-Komponente in die ZIP-Datei packen. Mach' ich in der Art mit EPubs. Sind ja auch nur ZIP-Dateien. |
AW: Word-Dok ohne Word verändern...
Zitat:
|
AW: Word-Dok ohne Word verändern...
Stabil? Naja, MS kann jederzeit das Format ändern, dann wäre aber die ISO Standardisierung wohl futsch, die sie scheinbar vor Jahren auf etwas "unkoscherem Weg" erhalten hatten und mancher Anwender darf's dann evtl. nicht mehr nutzen, da es kein offenes bzw. standardisiertes Format ist.
=> die werden das nicht ganz so einfach abändern wollen... Zu ZIP: in neueren Delphis ist ja in der RTL schon eine ZIP-Bibliothek mit drin, die zumindest für die einfacheren Fälle reicht. Ver/Entschlüsselung kann die m.W. z. B. nicht, aber normale .DOCX Dateien sind ja auch nicht verschlüsselt... Grüße TurboMagic |
AW: Word-Dok ohne Word verändern...
Zitat:
Nja, im Gegensatz zum alten Format ist es hier ja gut dokumentiert. ![]() Aber ja, es sollte klar sein, dass man besser auch das Protokoll-Format ausliest und mindestens prüft, ob es in einem für sich gültigen Bereich liegt. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:47 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz