JavaRush /Java-Blog /Random-DE /Bytes. Was lesen wir aus der Datei?
Roman
Level 33

Bytes. Was lesen wir aus der Datei?

Veröffentlicht in der Gruppe Random-DE
Im Allgemeinen handelt es sich hierbei um Informationen für Einsteiger. Als das Thema des Auslesens von Informationen aus einer Datei aufkam, stellte sich die Frage: Wenn die Datei Buchstaben enthält, warum lesen wir dann Zahlen in Form von Bytes daraus und was ist in diesem Fall ein Byte? Was ein Byte ist, wurde hier schon recht gut geschrieben. Aber nach der Lektüre blieb die Frage nach dem Mechanismus zur Umwandlung von Buchstaben in Zahlen bestehen, sodass ich etwas tiefer im Internet recherchieren musste. Daher kann das Folgende als Ergänzung betrachtet werden. Der Computer speichert jede Datei als Information, die aus Nullen und Einsen in binärer Form besteht. Jede Datei ist eigentlich eine Sammlung aufeinander folgender Bytes. Typischerweise gibt es zwei Arten von Informationsdateien: eine Textdatei und eine Binärdatei. Die Textdatei enthält einen typischen, für Menschen lesbaren Zeichensatz, den wir in jedem Texteditor öffnen können. Binärdateien bestehen aus Zeichen, mit denen wir im Alltag nicht vertraut sind; daher ist ein spezielles Programm erforderlich, das sie lesen kann. Textdateien bestehen aus Buchstaben, Zahlen und anderen gängigen Zeichen. Solche Dateien haben die Erweiterungen .txt, .py, .csv usw. Wenn wir eine solche Datei öffnen, sehen wir den üblichen Satz von Zeichen, die Wörter bilden. Obwohl dieser Inhalt in Wirklichkeit nicht in dieser Form im Computer gespeichert ist. Es wird in Form von Bits gespeichert, also 0 oder 1. In verschiedenen Codierungstabellen ist ASCII, UNICODE oder ein anderer Wert jedes Zeichens in binärer Form definiert. Wenn ein Byte dementsprechend 256 Zeichen aufnehmen kann, dann hat jedes Zeichen seine eigene binäre Kodierung aus Nullen und Einsen (acht hintereinander geschriebene Nullen oder Einsen ergeben ein Zeichen). Beim Öffnen der Datei übersetzt der Texteditor also jeden ASCII-Wert in ein bekanntes Zeichen und zeigt ihn in seiner gewohnten Form an. Beispielsweise lautet die Zahl 65 in der Binärform des ASCII-Codes 1000001, die in der Datei mit dem lateinischen (nicht kyrillischen Alphabet. Das kyrillische Alphabet beginnt ab Position 192) Buchstaben „A“ angezeigt wird. Das heißt, im ASCII-System entspricht ein Byte mit dem Wert 1000001 dem Wert des lateinischen Buchstabens „A“. Jede Zeile der Datei hat ihren eigenen Zeilenumbruch – EOL (End of Line). Oft ist dieses Zeichen (zwei Zeichen) „\n“ (Binärwert in ASCII: 00001010). Nach dem Lesen eines solchen Zeichens interpretiert das Programm es als Zeilenende und Übergang zur darunter liegenden Zeile. Es gibt weitere ähnliche „Funktionssymbole“. Binärdateien werden wie Textdateien in binärer Form gespeichert, sind jedoch nicht an ein Programm „angehängt“, das sie dekodiert, d. h. es gibt keine Entschlüsselungstabelle vom ASCII-Typ. Der Inhalt solcher Dateien besteht im Wesentlichen aus Bildern, Audio und Video, die wiederum komprimierte Versionen anderer Dateien sind, beispielsweise selbstausführende Dateien (.exe). Solche Dateien (Binärdateien) sind für Menschen im üblichen Sinne nicht lesbar, sodass der Versuch, sie mit herkömmlichen Texteditoren zu öffnen, eine Menge unverständlichen Mülls anzeigen wird. Dementsprechend werden spezielle Programme erstellt, um solche Dateien korrekt zu lesen. Binärdateien werden ebenfalls als eine Reihe von Bytes gespeichert, aber in diesem Fall kann die Änderung auch nur eines Bits dazu führen, dass die gesamte Datei unlesbar wird. Die ASCII-Zeichentabelle kann hier eingesehen werden. Wenn wir also eine Datei lesen, werden 8 Zeichen (eins oder null) in die Bytevariable eingelesen, die dann von einem Programm wie Notepad in lesbare Zeichen umgewandelt werden können. Die Quelle , die mir geholfen hat, es herauszufinden.
Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION