Readbyte
Readbyte
Ich habe versucht aus einer Textdatei mit dem Befehl Readbyte() alle Bytes auszulesen, meine Fragen dazu sind:
1)Manche Werte wie äöüß werden als negative Zahlen ausgelesen wie kann ich das so ändern das ein gültiger ascii wert herauskommt?
2)Wird der Header der Datei mitgelesen
3)Wie kann ich exen usw... ohne Datenverlust oder verfälchungen in ASCIi Werte einlesen
Danke für Antworten und Problemlösungen...
1)Manche Werte wie äöüß werden als negative Zahlen ausgelesen wie kann ich das so ändern das ein gültiger ascii wert herauskommt?
2)Wird der Header der Datei mitgelesen
3)Wie kann ich exen usw... ohne Datenverlust oder verfälchungen in ASCIi Werte einlesen
Danke für Antworten und Problemlösungen...
Ich würde sagen, die werden negativ weil sie den Bereich von 7 bit sprengen. Nimmt man nun word oder long dann muss man sie nicht noch extra per & Verknüpfen sondern schlichtweg auslesen. Das ist nur eine Theorie und nicht getestet. Denn so manche Funktion in PB kann durchaus mit unsigned byte arbeiten, macht aber Probleme wenn man die Daten in signed byte schreiben will.MVXA hat geschrieben:ReadByte()&$FF dürfte die Antwort auf deine Fragen sein. PB Speichert Variablen mit einem Vorzeichen. Auch als Signed bekannt. Wenn du die Methode anwendest, musst du natürlich den ASCII Wert in einer größeren (Long) Variable speichern.
Was den Header betrifft, natürlich wird dieser mitgelesen. Sogesehen ist der Header nichts weiter als eine Anordnung von Byte die nach einem gewissen Schema festgelegt ist. Du fängst bei 0 byte mit dem Einlesen an und endest am Dateiende. Dann musst du selber Sorge tragen wo der Header endet um Daten von Header zu unterscheiden.

- NicTheQuick
- Ein Admin
- Beiträge: 8809
- Registriert: 29.08.2004 20:20
- Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti - Wohnort: Saarbrücken
Re: Readbyte
Konne hat geschrieben:Ich habe versucht aus einer Textdatei mit dem Befehl Readbyte() alle Bytes auszulesen, meine Fragen dazu sind:
1)Manche Werte wie äöüß werden als negative Zahlen ausgelesen wie kann ich das so ändern das ein gültiger ascii wert herauskommt?
Code: Alles auswählen
Byte.l = ReadByte() & $FF
Wenn die Datei überhaupt einen Header hat, wird der natürlich mitgelesen. Ein Header besteht auch nur aus Bits und Bytes.2)Wird der Header der Datei mitgelesen
3)Wie kann ich exen usw... ohne Datenverlust oder verfälchungen in ASCIi Werte einlesen
Code: Alles auswählen
Byte.l = ReadByte() & $FF
Bitte
Danke für Antworten und Problemlösungen...