Einzelnen Beitrag anzeigen

Benutzerbild von dataspider
dataspider

Registriert seit: 9. Nov 2003
Ort: 04539 Groitzsch
1.351 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Speichern in BlobField zerschießt MemorySTream

  Alt 16. Mär 2023, 14:21
Bei der Konvertierung wird anscheinend ein Bild im Binary Format eingefügt:

{\pict\jpegblip\picw4416\pich1027\picwgoal4416\pic hgoal1027
\bin28150 ÿØÿà...
Das ist richtig, darum ist es in der DB ein Binäres Blob (Firebird) und deshalb benutze ich TMemoryStream.
Ich dachte immer, TMemoryStream kümmert sich nicht um EnCoding.

Speichern in der Datenbank mit einem Text-Encoding (ANSI, UTF-8 ...) kann dann zu Problemen führen. Speichern in ein Blob ohne Encoding/Textkonvertierung sollte funktionieren.
Wie geht "Speichern in ein Blob ohne Encoding/Textkonvertierung"?
Ich habe auch in ParseStream versucht, anstatt mit AnsiString mit TBytes zu arbeiten bei Stream.WriteBuffer. Bringt auch keine Änderung.

Alternative Idee: vielleicht kann DevExpress RichEditControl die Bilder anstatt Binär im Hex-Format ablegen. Das hat dann einen größeren Platzbedarf, besteht aber aus ASCII Daten.
Also DevExpress legt die Bilder nicht binär ab. WPTools macht das. Aber ob ich das beeinflussen kann, weiß ich nicht.
Wäre auch nicht die Lösung, da ich ca. 1000 Einträge konvertieren muss.
Durch meine Routine sollte das automatisch passieren. Deshalb bei 2. Feld mit anderem Namen.

Ich bin mir ziemlich sicher, dass es nur die Zeile mit WriteBuffer ist. Aber ich komme nicht weiter.

Dennoch - Vielen Dank!

Frank
Frank Reim

Geändert von dataspider (16. Mär 2023 um 14:25 Uhr)
  Mit Zitat antworten Zitat