Entwickler-Ecke

Dateizugriff - String in Bytes in eine Datei umwandeln


eci - Do 07.08.03 12:45
Titel: String in Bytes in eine Datei umwandeln
Hallo zusammen,

ich hab in Delphi in meinem Proggi einen String der eigentlich eine Datei ist, dh Bytes wurden in ASCII Zeichen umgewandeln und als String typisiert (fälschlicher, aber unumgebarerweise), jetzt will ich den String also wieder in normale Bytes umwandeln und als Datei abspeichern ( 10010100110...).

Kann mir jemand für dieses eigentlich simple Problem einen Tipp geben?


mimi - Do 07.08.03 14:53

ich meine bei delphi 6 gibt es eine funktion die wandelt byte ins strings:
StrToByte ?
ByteToStr ?
StringToByte ?
ByteTo String ?


Aya - Do 07.08.03 16:10

Hi,

ich würd dir doch eher IntToStr und StrToInt empfehlen ;)

Au'revoir,
Aya~


Delete - Do 07.08.03 16:14
Titel: Re: String in Bytes in eine Datei umwandeln
eci hat folgendes geschrieben:
einen String der eigentlich eine Datei ist

Ähm wie meinen? Ich habe in meinem Auto einen Autositzt, aber das ist ein Autositz und nicht eigentlich das Auto.
Zitat:

, dh Bytes wurden in ASCII Zeichen umgewandeln und als String typisiert

Auf der Festplatte wird alles binär gespeichert, liegt in der Natur der Sache. Was nachher bei rauskommt ist reine Interpretationsache des Programmes oder was auch immer die Daten ausliest.
Zitat:

jetzt will ich den String also wieder in normale Bytes umwandeln und als Datei abspeichern ( 10010100110...).

Brauchst du nicht, macht das Betriebssystem für dich, wenn du die entsprechenden Funktionen der Programmiersprache aufrufst.
Zitat:

Kann mir jemand für dieses eigentlich simple Problem einen Tipp geben?

Nicht so lange ich dein Problem nicht erkenne.


tommie-lie - Do 07.08.03 16:18

Und ich würde zu guter Letzt empfehlen, die frage ein wenig zu präzisieren.

Du schreibst also Zeichen (irgendwas) in einen String und willst diesen dann in eine Datei schreiben? Dazu musst du wissen, das ein String aus Zeichen besteht, die einem Byte entsprechend (WideStrings mal ausgenommen). Wenn du also Filestreams benutzt, kannst du einfach mit

Delphi-Quelltext
1:
Stream.Write(PChar(derString)^, Length(derString));                    

den String direkt in die Datei schreiben, ein Umwandeln ist nicht mehr nötig.

Wenn das jetzt daneben geraten war, solltest du dein Problem ein wenig genauer schildern.