AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Base64 to RawByteString

Ein Thema von Incocnito · begonnen am 14. Jul 2020 · letzter Beitrag vom 14. Jul 2020
Antwort Antwort
Incocnito

Registriert seit: 28. Nov 2016
229 Beiträge
 
#1

AW: Base64 to RawByteString

  Alt 14. Jul 2020, 14:07
Hi TiGu,

ich bin mir nicht 100%ig sicher, was da an Daten kommt,
aber ein Teil davon ist "als Text lesbar", falls du das meinst.
Beispielsweise "§~~00020‚ Hallo Welt&}}!", wobei er hier die Byte-Codes, die ich
hier reinkopiert habe auch schon wieder rauswirft.
In "Wirklichkeit" sind das dann Byte-Codes, die für andere Informationen stehen.
Meiner Meinung nach macht das noch keinen Delphi-UCSString (?), da die Daten an sich
nur im Text-Anteil als ASCII (oder ANSI?, ich bin mir da nie so sicher) kodiert sind.
Der Rest sind Byte-Codes für irgendwelche Stati.
Ich bin also näher am Bitmap/Firmware-Code/... als am Text.
(Man kann ja auch den Inhalt einer EXE-Datei in einen String laden, aber das will doch keiner!)
Hoffendlich ist nun etwas klarer, worum es geht.
Auf Informationen bezüglich der Daten würde ich auch gerne verzichten
und das Problem so allgemein wie möglich halten.

MfG
Incocnito
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.073 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Base64 to RawByteString

  Alt 14. Jul 2020, 14:57
Es wäre dann sinnvoller nach TBytes oder einen Stream zu dekodieren und dann innerhalb des (bekannten?) Binärformates nach den Strings zu suchen, insofern du die wirklich brauchst.

Irgendwelche Binärdaten hart in einen String (sei es nun Unicode- oder dieser spezielle Ansistring=RawByteString) zu casten ist fehleranfällig, um sich zu sagen geradezu falsch.
  Mit Zitat antworten Zitat
Incocnito

Registriert seit: 28. Nov 2016
229 Beiträge
 
#3

AW: Base64 to RawByteString

  Alt 14. Jul 2020, 15:05
Ich meine auch, dass wenn überhaupt dann "TStringStream.Bytes" (oder meinetwegen TMemoryStream.Bytes)
der richtige Ansatz wäre. Also TBytes, wie du ja auch schon sagst.
Ich denke, dass das RawByteString noch aus den Pascal-Zeiten kommt.
Und den sonst funktionierenden Quelltext der mit RawByteString arbeitet fasse ich sicher nicht an.
Dann lasse ich das lieber so häßlich mit dem Typecast von String auf RawByteString. 🤯

MfG
Incocnito
  Mit Zitat antworten Zitat
mytbo

Registriert seit: 8. Jan 2007
480 Beiträge
 
#4

AW: Base64 to RawByteString

  Alt 14. Jul 2020, 15:58
In der mORMot Unit SynCommons.pas findest du Funktionen wie:
  • BytesToRawByteString()
  • StreamToRawByteString()
  • und verschiedene Base64Toxxx Funktionen

Bis bald...
Thomas
  Mit Zitat antworten Zitat
Incocnito

Registriert seit: 28. Nov 2016
229 Beiträge
 
#5

AW: Base64 to RawByteString

  Alt 14. Jul 2020, 16:16
Das ist ja mal ein nettes Nachschlagewerk.
Probiere ich morgen dann aus! Danke erstmal! 👌

MfG
Icocnito
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:15 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