Textdaten ald Bin speichern.

Für allgemeine Fragen zur Programmierung mit PureBasic.
funkheld
Beiträge: 636
Registriert: 31.12.2009 11:58

Textdaten ald Bin speichern.

Beitrag von funkheld »

Hallo, guten Tag.

Ich habe diese Text-Datei:

Code: Alles auswählen

        BYTE	$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
	BYTE	$00,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$00,$00
	BYTE	$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$00
	BYTE	$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$00
	BYTE	$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$00
	BYTE	$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$00
	BYTE	$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$00
	BYTE	$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$00
	BYTE	$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$00
	BYTE	$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$00
	BYTE	$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$00
	BYTE	$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$00
	BYTE	$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$00,$00,$00,$20,$00,$00
	BYTE	$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$00,$00,$00,$00,$00,$00,$00
	BYTE	$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$00
	BYTE	$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$00
	BYTE	$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$00
	BYTE	$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$00,$00
Nun möchte ich bitte die Hexwerte alle als BIN abspeichern.

Wie geht das bitte?

Danke.
Gruss
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8677
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 32 GB DDR4-3200
Ubuntu 22.04.3 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken
Kontaktdaten:

Re: Textdaten ald Bin speichern.

Beitrag von NicTheQuick »

Geht es nur um die eine Datei oder hast du mehrere dieser Art, die du konvertieren möchtest?
Bild
fabulouspaul
Beiträge: 120
Registriert: 01.04.2011 21:59

Re: Textdaten ald Bin speichern.

Beitrag von fabulouspaul »

So...

Code: Alles auswählen

EnableExplicit

Define hex_dateiname.s
Define hex_dateinummer
Define bin_dateiname.s
Define bin_dateinummer
Define zeile.s
Define i
Define zeichen.a

hex_dateiname = "p:\test\hex.txt"
bin_dateiname = "p:\test\bin.bin"

hex_dateinummer = OpenFile(#PB_Any, hex_dateiname)
bin_dateinummer = CreateFile(#PB_Any, bin_dateiname)

If hex_dateinummer <> 0 And bin_dateinummer <> 0
  While Not Eof(hex_dateinummer)
    ; Zeile einlesen
    zeile = Trim(ReadString(hex_dateinummer, #PB_Ascii))
    ; "Byte" am Anfang eliminieren
    If UCase(Left(zeile, 4)) = "BYTE"
      zeile = Trim(Right(zeile, Len(zeile) - 4))
    EndIf
    ; Werte auslesen und binär schreiben
    For i = 0 To CountString(zeile, ",")
      zeichen = Val(StringField(zeile, i + 1, ","))
      WriteAsciiCharacter(bin_dateinummer, zeichen)
    Next i
  Wend
  CloseFile(hex_dateinummer)
  CloseFile(bin_dateinummer)
EndIf

End
funkheld
Beiträge: 636
Registriert: 31.12.2009 11:58

Re: Textdaten ald Bin speichern.

Beitrag von funkheld »

Hallo, danke für die Hilfe.

Das Programm kann ich noch schön ausbauen.

Gruss
Antworten