Seite 1 von 1

String als binäre Datei speichern

Verfasst: 10.04.2013 17:38
von Piwo
Hi leute,

in einem vorherigen Thread hat man mir sehr gut bei einem kleinen programm geholfen, nämlich Dateien jeder art einzulesen und sie hexadezimal in einem langem string abzuspeichern.
Meine frage jetzt ist jedoch wie ich diesen String voller hexadezimaler zeichen wieder als die Datei abspeichern kann die sie vorher war, ohne die funktionstüchtigkeit zu beeinträchtigen (unabhängig ob die datei vorher eine .exe, .txt. .doc oder sonst ganz gleich was war).
Geht es am einfachsten wenn ich es via createfile() eine neue datei erstelle und mittels z.B. writebyte() die umgereichneten hex-werte nacheinander reinschreibe oder muss ich hier komplexere methoden nutzen?

Danke im vorraus :)

Re: String als binäre Datei speichern

Verfasst: 10.04.2013 18:09
von NicTheQuick
Genau so kannst du es machen. Damit es aber schnell wird, muss man womöglich einiges mehr tun.

Hier das Beispiel für die einfache Art:

Code: Alles auswählen

Define.s hexString = "ab4F126700C4"

If CreateFile(0, "/home/nicolas/tmp/testfile")

	Define.i hexLength.i = Len(hexString)
	Define.i i
	For i = 1 To hexLength Step 2
		Define.s hexByte = Mid(hexString, i, 2)
		Define.b byte = Val("$" + hexByte)
		WriteByte(0, byte)
	Next
	CloseFile(0)
EndIf