Wat betekent \x00 in een binair bestand?

Ik vroeg een keer aan een man “wat is het verschil tussen ASCII- en binaire bestanden?”

En hij zei: “Binaire bestanden hebben altijd \x00”

Ik heb hiernaar gezocht en vond Wat is de betekenis van \x00 , \x04 in PHP

dus de conclusie is dat ASCII-bestanden geen NULL-teken hebben?


Antwoord 1, autoriteit 100%

Een ASCII-bestand kan worden gelezen of geïnterpreteerd als NULL-terminated strings, carriage returns & line-feeds of andere controletekens die bedoeld zijn om gelezen en opgevolgd te worden. Een tekstlezer kan bijvoorbeeld zoeken naar een regel tekst, waarbij een regel is “hoeveel tekens u ook ziet voordat u bij een regelinvoer komt”

Een binair bestand wordt beschouwd als slechts een reeks bytes – geen van hen heeft een speciale betekenis, in de zin dat een tekstlezer ze zou interpreteren.

\x00 is een voorbeeld van een specifieke bytewaarde (HEX 0), die op een speciale manier kan worden geïnterpreteerd door een tekstlezer.


Antwoord 2

Fout. ASCII-bestanden hebben NULL-tekens. In feite eindigt elke string in ASCII op een NULL.

ASCII-bestanden zijn bestanden die alleen ASCII-tekens x0 – x127 bevatten.

Binaire bestanden bevatten gegevens en elke individuele byte kan een ascii-teken, een geheel getal, een aanwijzer, enz. zijn. Het is maar net hoe je gegevens naar het bestand schrijft en hoe je het terugstuurt.

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Other episodes