Textdatei: Unterschied zwischen den Versionen

Aus Foxwiki
Zeile 73: Zeile 73:
Wird eine Textdatei unter Verwendung einer falschen Zeichencodierung interpretiert, kann sie gänzlich unlesbar sein, wenn vollständig inkompatible Codierungen verwendet werden – wie beispielsweise ASCII und EBCDIC
Wird eine Textdatei unter Verwendung einer falschen Zeichencodierung interpretiert, kann sie gänzlich unlesbar sein, wenn vollständig inkompatible Codierungen verwendet werden – wie beispielsweise ASCII und EBCDIC
* Wird hingegen eine abweichende, aus dem ursprünglichen ASCII abgeleitete Codierung verwendet, werden lediglich die Sonderzeichen – beispielsweise die deutschen [[Umlaut]]e – falsch dargestellt, da diese nicht Bestandteil der ersten 128 standardisierten Zeichen des ASCII sind
* Wird hingegen eine abweichende, aus dem ursprünglichen ASCII abgeleitete Codierung verwendet, werden lediglich die Sonderzeichen – beispielsweise die deutschen [[Umlaut]]e – falsch dargestellt, da diese nicht Bestandteil der ersten 128 standardisierten Zeichen des ASCII sind
== Datenaustausch ==
=== Austausch zwischen unterschiedlichen Systemen ===
Wenn Textdateien von einem System auf ein System anderen Typs übertragen werden, muss berücksichtigt werden, ob die durch die Systeme verwendeten Zeichencodierungen übereinstimmen
* Weiterhin ist das zur Kennzeichnung des Zeilenendes verwendete Verfahren zu berücksichtigen (siehe [[#Kennzeichnung mittels Steuerzeichen|oben]])
* Der Austausch von Dateien, die nur die ersten 128 Zeichen des ASCII verwenden, ist auf Systemen, die diese oder eine daraus abgeleitete Codierung verwenden, meist recht problemlos
* Auch die Unicode-Codierung UTF-8 stimmt bei ausschließlicher Verwendung dieser Zeichen exakt mit ASCII überein
* Werden hingegen weitere Zeichen verwendet, ist oft eine Konvertierung erforderlich
* Zu beachten ist allerdings, dass eine Konvertierung nur dann durchzuführen ist, wenn die Datei auf dem Zielsystem selbst auch angezeigt wird
* Wird die Datei auf diesem System nur gespeichert und zur Anzeige wieder auf ein System übertragen, das die ursprüngliche Codierung verwendet, wäre eine Konvertierung unnötig und möglicherweise sogar schädlich, da durch diese doppelte Konvertierung Information verloren gehen kann
Beim Austausch von Textdateien als Anhang einer [[E-Mail]] können Unstimmigkeiten auftreten
* Das Problem liegt dabei meist beim Absender, da dessen [[Mail-Client]] häufig die Codierung der Textdatei nicht korrekt ermitteln kann, vom Benutzer aber diese Angabe aus Gründen der Benutzerfreundlichkeit nicht fordert und so keine entsprechende oder eine falsche Information in die Mail einträgt
* Im Prinzip sind die meisten heute gebräuchlichen Mail-Clients in der Lage, die Codierung im Bedarfsfall zu konvertieren
Bei einer direkten Dateiübertragung ''(File Transfer)'' zwischen Systemen wird meist ein spezielles [[Computerprogramm|Programm]] zur Übertragung verwendet
* Dieses übernimmt auch die notwendigen Konvertierungen, auch wenn die Codierungen beider Systeme gänzlich unterschiedlich sind – wie beispielsweise beim Austausch zwischen Windows und IBM-Großrechnern
* Bei einer Übertragung muss im Regelfall angegeben werden, ob es sich bei der zu übertragenden Datei um eine Text- oder Binärdatei handelt, um festzulegen, ob eine Konvertierung der Datei erfolgen soll oder zu unterlassen ist – der Inhalt einer Binärdatei würde durch eine solche Konvertierung zerstört


== Verwendung von Textdateien ==
== Verwendung von Textdateien ==

Version vom 4. November 2024, 13:34 Uhr

Textdatei - Datei, die darstellbare Zeichen enthält

Beschreibung

95 ASCII-Zeichen, weiße Schrift auf schwarzem Grund
Die 95 druckbaren Zeichen des ursprünglichen ASCII

Als Textdatei wird in der Informationstechnik eine Datei bezeichnet, die darstellbare Zeichen enthält und zum Speichern, Bearbeiten, zur Datenübertragung und Lesen dient

Allgemeines

Die Zeichen können durch Steuerzeichen wie Zeilen- und Seitenwechsel untergliedert sein

Umgangssprachliche Verwendung

Im Gegensatz zu dieser fachsprachlichen Definition des Begriffs Textdatei, bei der das Dateiformat ausschlaggebend ist, orientiert sich die umgangssprachliche Verwendung des Begriffs häufig primär am für den Endbenutzer sichtbaren Inhalt der Datei: Dabei werden etwas unscharf alle Dateien als „Textdatei“ bezeichnet, die mit dem Ziel erstellt wurden, einen lesbaren Text zu präsentieren, unabhängig davon, in welcher Form sie gespeichert werden

  • Bei den von üblicher Textverarbeitungs- oder Publishingsoftware bei Speicherung erzeugten Dateien handelt es sich jedoch häufig um komplexe Dateiformate, die neben dem Text Metainformation zur Beschreibung des Textlayouts, der Struktur und der verwendeten Schriften enthalten; zudem können Bilder oder Grafiken eingebettet sein
  • Deshalb handelt es sich um keine Textdateien im fachsprachlichen Sinn, da die Dateiformate häufig binär sind und zur Anzeige eine spezielle Software erforderlich ist

Bei einer Textdatei im fachsprachlichen Sinn wird die Menge der verfügbaren Zeichen durch die zugrunde liegende Codierung bestimmt

  • Am gebräuchlichsten sind hierbei ASCII oder UTF-8, eine Codierung des Unicode
  • Eine solche Textdatei muss dabei nicht notwendigerweise Text enthalten – es kann sich beispielsweise auch um ASCII-Art handeln, also um Piktogramme auf Basis der verfügbaren Zeichen
  • Wenn es sich jedoch um Text handelt und zum Verständnis der Bedeutung weder besondere Verarbeitungsschritte noch die Kenntnis einer speziellen Notation erforderlich sind, wird der Inhalt als Plain text bezeichnet
  • Die Zeichenmenge wird aber auch häufig durch eine natürliche oder formale Sprache eingeschränkt
  • Textdateien, die eine bestimmte Notation erfordern – wie beispielsweise HTML-Dateien – können zwar mit einem einfachen Texteditor bearbeitet werden, jedoch gibt es hierfür oft spezielle Programme, die die Bearbeitung erleichtern – beispielsweise durch besondere Hervorhebungen oder automatische Formatierungen

Binär-/Textdatei

Abgrenzung von Binär- und Textdateien
Binärdatei

Das Gegenstück zur Textdatei ist eine Binärdatei

  • Im Grunde werden auch Textdateien binär gespeichert, die Begriffe werden jedoch komplementär verwendet, denn die Interpretation des binären Inhalts ist ausschlaggebend: Bei einer Textdatei wird der Inhalt als sequenzielle Folge von Zeichen eines Zeichensatzes interpretiert, bei einer Binärdatei ist eine beliebige anderweitige Interpretation des Inhalts möglich

Folglich ist eine Textdatei im Gegensatz zu einer Binärdatei ohne die Verwendung spezieller Programme lesbar und kann mit einem einfachen Texteditor – wie beispielsweise mit Notepad unter Windows oder vi oder Nano unter Unix – betrachtet und bearbeitet werden

Bei vielen Betriebssystemen existieren Konventionen in Bezug auf die Endung von Dateinamen zur Kennzeichnung des Dateityps

  • Unter Windows und macOS wird dem Namen einer Textdatei meist die Endung .txt angehängt, auch bei anderen Betriebssystemen wie beispielsweise Linux wird diese Dateiendung teilweise verwendet

Die zur Standardisierung des technischen Formats von E-Mails entworfenen Multipurpose Internet Mail Extensions (MIME) definieren sogenannte Medientypen, die mittlerweile neben dem E-Mail-Verkehr auch in vielen anderen Bereichen zur Kennzeichnung des Dateityps verwendet werden

  • Der Medientyp text kennzeichnet dabei Text
  • Die vollständige Typangabe wird noch um einen Subtyp ergänzt, der den Verwendungszweck des Textes spezifiziert
  • Bei Textdateien, die direkt den „eigentlichen“ Text enthalten, der nicht für eine bestimmte maschinelle Weiterverarbeitung bestimmt ist, lautet die vollständige Typangabe text/plain

Für den in einer Textdatei enthaltenen Text können keine besonderen Formatierungen wie beispielsweise Hervorhebungen durch Fettdarstellung festgelegt werden

Eine mit einer Textverarbeitung (wie beispielsweise Microsoft Word oder LibreOffice Writer) erstellte Datei ist im Normalfall keine Textdatei,

selbst wenn ausschließlich Text erfasst wurde, da der Text nur unter Verwendung eines geeigneten Textverarbeitungssystems wieder angezeigt und bearbeitet werden kann
  • Auch ein im PostScript (.ps), Portable Document Format (PDF, .pdf) oder TeX-DVI (.dvi) vorliegender Text ist keine Textdatei, weil diese codierte Formatinformationen enthält, die auch binär sein können
  • Ebenso handelt es sich bei Texten, die mittels eines Scanners eingelesen werden, nicht um Textdateien
  • Diese sind vielmehr Bilddateien, sofern sie nicht nach dem Scan-Vorgang mittels einer Texterkennungs-Software (OCR, Vorlage:Lang) in eine Textdatei umgewandelt werden

Bei einer Datenkomprimierung kann bei Textdateien im Regelfall eine erheblich größere Einsparung bei der Speichergröße erzielt werden als bei Binärdateien

  • Dies liegt daran, dass bei Textdateien die Informationsdichte geringer ist als bei den meisten Binärdateien, was die gängigen Komprimierungsalgorithmen ausnutzen – beispielsweise durch Verwendung der Huffman-Kodierung

Zeichencodierung

Der bei Textdateien physisch binär vorliegende Inhalt wird nach einer für die jeweilige Datei fest vorgegebenen Regel in Text umgewandelt

  • Dabei sind folgende Zeichencodierungen gebräuchlich
  • ASCII stellt das am weitesten verbreitete Format dar – insbesondere, wenn die diversen Erweiterungen des Standards einbezogen werden
  • ISO 8859-1 (auch bekannt als Latin-1) und ISO 8859-15 sind standardisierte Erweiterungen des ASCII, die die Grundlage des bei Windows im englischen und westeuropäischen Sprachraum verwendeten Codes Windows-1252 bilden
  • EBCDIC ist eine auf Großrechnern von IBM gebräuchliche Codierung
  • Unicode ist ein internationaler Standard, der weltweit alle sinntragenden Zeichen abbildet
  • Im Gegensatz zu obigen Codierungen kommt Unicode dabei nicht mit 8 Bit (das heißt einem Byte) aus, da Unicode weit mehr als 256 verschiedene Zeichen definiert

Bei der Verwendung von Unicode ist die generelle Umsetzung eines Zeichens in ein Byte nicht anwendbar

  • Es gibt unterschiedliche Verfahren, Unicode in eine Bytefolge umzusetzen
  • Am meisten verwendet werden hierbei Codierungen mit dem Ziel, die Dateigröße bei Auftreten der gebräuchlichsten Zeichen zu minimieren
  • Hierfür wird allerdings die Regel „geopfert“, dass jedes Zeichen immer mit derselben Anzahl Bytes codiert wird
  • Ein Beispiel hierfür ist die verbreitete Codierung UTF-8, die zudem die Besonderheit aufweist, dass alle im ursprünglichen ASCII enthaltenen Zeichen genau auf die gleiche Weise wie bei ASCII in einem Byte codiert werden
  • Der binäre Inhalt einer Datei, die ausschließlich aus solchen Zeichen besteht, ist also identisch, unabhängig davon, ob sie in ASCII oder UTF-8 codiert wurde
Text bei dem Umlaute und das Eszett falsch (als Sonderzeichen) dargestellt werden
Fehlerhafte Darstellung bei Verwendung der falschen Codierung

Bei Unicode existiert zudem die Konvention, am Beginn einer Datei mittels spezieller Bytefolgen (sogenannte Byte Order Marks) kenntlich zu machen, welche Unicode-Codierung verwendet wird

  • Dies ist auch deshalb nötig, da auf vielen Systemen – auch unter Windows – die bisherige auf ASCII basierende Codierung und Unicode parallel verwendet werden
  • Bei einer solchen Codierung beginnt die Grenze zur Binärdatei zu verschwimmen

Wird eine Textdatei unter Verwendung einer falschen Zeichencodierung interpretiert, kann sie gänzlich unlesbar sein, wenn vollständig inkompatible Codierungen verwendet werden – wie beispielsweise ASCII und EBCDIC

  • Wird hingegen eine abweichende, aus dem ursprünglichen ASCII abgeleitete Codierung verwendet, werden lediglich die Sonderzeichen – beispielsweise die deutschen Umlaute – falsch dargestellt, da diese nicht Bestandteil der ersten 128 standardisierten Zeichen des ASCII sind

Verwendung von Textdateien

Der ursprüngliche und einfachste Verwendungsfall von Textdateien ist die Übermittlung des enthaltenen Textes als eigentliche Information ()

  • Textdateien können aber unter Anwendung eines im Vorhinein festzulegenden formalen Aufbaus dazu genutzt werden, komplexere Daten zu übermitteln
  • Die Datei ist dann meist nicht mehr primär für die direkte Nutzung durch den Anwender gedacht, sondern wird durch ein bestimmtes Programm weiterverarbeitet oder durch einen Systemadministrator gepflegt

In vielen Fällen werden auf diese Weise heute Textdateien genutzt, in denen eigentlich Binärdateien prädestiniert erscheinen, weil nur eine maschinelle Weiterverarbeitung erfolgt

  • Der ausschlaggebende Nachteil der Binärdateien hier ist, dass deren Struktur über Systemgrenzen hinweg noch weit inhomogener als die von Textdateien ist (siehe beispielsweise Byte-Reihenfolge)
  • Dafür haben Textdateien den Nachteil, dass zur Speicherung derselben Information mehr Speicherplatz erforderlich ist und dass die Daten vielfach bei einer Weiterverarbeitung erst wieder ins binäre Format konvertiert werden müssen
  • Da aber – vor allem durch das Internet – der systemübergreifende Austausch von Daten immer bedeutender geworden ist, ist eine Datenspeicherung in Textdateien heute vielfach üblich

Auch für durch Administratoren oder privilegierte Benutzer zu pflegende Konfigurationsdateien wird häufig das Textformat verwendet

  • Bei einem binären Format wäre jeweils ein spezielles Konfigurationsprogramm erforderlich, bei Verwendung des Textformats kann die Konfigurationsdatei direkt mittels eines Texteditors bearbeitet werden

Tabellarische Daten

Textdateien werden aus verschiedenen Gründen zur Speicherung von Daten mit tabellarischer Struktur verwendet

Es gibt verschiedene Verfahren zur tabellarischen Anordnung der Daten in Textdateien, von denen die folgenden die gebräuchlichsten sind

  • Trennung der Spalten durch Tabulator: Das Tabulatorzeichen, ein spezielles Steuerzeichen, wird innerhalb einer Zeile zur Kennzeichnung der Spaltengrenzen verwendet
  • CSV-Format: Dieses Format, das ursprünglich Vorlage:Lang bedeutete, ist ähnlich der Trennung durch Tabulatorzeichen, nur wird in der Regel im englischen Sprachraum eben das Komma, im deutschen aber der Strichpunkt als Trennzeichen verwendet
  • Festlegung einer konstanten Anzahl Zeichen pro Spalte: Um eine solche Datei verwenden zu können, muss bekannt sein, welche Breite jede einzelne Spalte hat
  • Diese Definition wird selbst nicht in der Datei gespeichert

XML

XML (Extensible Markup Language) ist ein Meta-Dateiformat

  • Es definiert also, in welchem Format definiert wird, wie die Struktur einer Datei aussieht

XML ist dabei bewusst ein Textformat und soll für Mensch und Maschine gleichermaßen lesbar sein, auch soll ein systemübergreifender Austausch von XML-Daten problemlos ermöglicht werden

XML-Dateien sind also grundsätzlich Textdateien, deren grobe Strukturierung standardisiert ist und die vor allem zum Datenaustausch oder zur Datenspeicherung verwendet werden – der genaue Verwendungszweck wird von XML selbst nicht vorgegeben

  • Ein Beispiel für ein auf XML basierendes Format ist SVG (Vorlage:Lang), ein Grafikformat, das somit im Prinzip lesbar in einer Textdatei codiert ist

Die Dateiformate der Textverarbeitungen OpenDocument (OpenOffice.org) und Office Open XML (der neueren Versionen von Microsoft Word, erkennbar an der Dateierweiterung .docx statt .doc) basieren auf XML, und die gespeicherten Dateien sind demzufolge Textdateien

  • Dabei ist aber zu beachten, dass der „Text“, der bei direkter Bearbeitung einer solchen Datei sichtbar wird, nicht der „eigentliche“ Textinhalt des Dokuments ist, sondern die Beschreibung des Textdokuments auf einer Metaebene

Weitere Dateiformate

Neben XML-Formaten existieren noch einige meist ältere, recht weit verbreitete Auszeichnungssprachen, die häufig verwendet und in Form einer Textdatei gespeichert werden

Das Dateiformat definiert unter anderem Zugehörigkeit, Aufgabe und Klasse der Datei (Betriebssystemdatei oder Videodatei usw.)

In welchem Dateiformat eine Datei gespeichert wurde, lässt sich an ihrer Dateinamenserweiterung erkennen (etwa „*.exe“ für ein ausführbares Computerprogramm oder „*.wmv“ für ein Windows Metafile)

  • Die wichtigsten Dateiformate für Textdateien sind


Dateiformat Dateiendung
Textdatei *.txt
Microsoft Word *.doc
Office Open XML *.docx und andere
Microsoft Access *.acc
Microsoft PowerPoint *.ppt und andere
OpenDocument *.odt und andere
Apple Pages *.pages
Portable Document Format *.pdf
Rich Text Format *.rtf
Microsoft Excel *.xls und andere
Extensible Markup Language *.xml
  • HTML, die Sprache zur Gestaltung von Inhalten im World Wide Web, ist von der Struktur her verwandt mit XML
  • Rich Text Format (RTF) ist eine Sprache zum Austausch von formatiertem Text zwischen Textverarbeitungsprogrammen, auch auf unterschiedlichen Plattformen
  • TeX und LaTeX stellen ein Textsatzsystem dar, das zur Textgestaltung eine spezielle Sprache verwendet, die in Textdateien codiert wird
  • PostScript ist ein Dateiformat, das professionelle Druckformatierungen ermöglicht und in Form einer Textdatei gespeichert wird
  • Die Binärdaten enthaltener Grafiken werden als hexadezimale Ziffern in Text umgesetzt
  • Da viele Drucker dieses Format direkt interpretieren können, geben viele Textverarbeitungs- oder Desktop-Publishing-Programme ihre Ergebnisse im PostScript-Format aus
  • PostScript wird allerdings in einigen Bereichen von PDF verdrängt

Daneben existieren noch viele weitere und auch proprietäre Formate, deren Aufbau sich nur bei Verfügbarkeit einer entsprechenden Spezifikation erschließt

Nutzung

Speichern
Das Speichern einer Textdatei geschieht mit Hilfe eines Datenspeichers, der ein bestimmtes Dateiformat unterstützt

  • Dazu wird das Menü „Speichern“ ausgewählt, das für die Speicherung sorgt
  • Moderne Betriebssysteme ordnen über das Dateiformat Anwendungen zu, welche die Dateien interpretieren können

Lesen und Bearbeiten
Unter unixoiden Betriebssystemen erkennt das Programm bzw. die Bibliothek file, ob es sich um eine für die textuelle Bearbeitung geeignete Datei handelt, unabhängig von der Dateinamenserweiterung

  • Unter Windows und im Vorläufersystem MS-DOS (beide von Microsoft) dienen die Kommandozeilenbefehle TYPE und MORE der Anzeige von Textdateien
  • Unter allen Betriebssystemen gibt es Texteditoren zur direkten Anzeige und Bearbeitung von Textdateien auf der Kommandozeile, beispielsweise less, ed, vi oder Nano unter unixoiden Betriebssystemewn
  • Dabei ermöglichen praktisch alle Texteditoren, in einer Datei direkt nach speziellen Textinhalten zu suchen
  • Viele, insbesondere grafische, Texteditoren bieten auch eine Unterstützung bei der Darstellung spezieller Dateiformate, so werden verschiedene Syntaxelemente entsprechend ihrer Bedeutung hervorgehoben (beispielsweise durch Einfärbungen)
  • Mithilfe eines Texteditors kann eine Datei im Regelfall auch gedruckt werden

Die Bearbeitung in einem grafischen Texteditor erfolgt durch Aufruf des Menüs „Öffnen“

  • Durch Suchen und Ersetzen lässt sich die zu ändernde Passage finden; der gesamte Dateiinhalt kann verändert werden
  • Sowohl bei der Anzeige in einem Texteditor als auch beim Ausdrucken kann das Problem auftreten, dass die Einrückung von Zeilen nicht korrekt dargestellt wird
  • Dies liegt meist daran, dass in der Datei das Tabulatorzeichen enthalten ist, für das nicht einheitlich definiert ist, wie weit die Einrückung erfolgen soll
  • Um wie viele Zeichen eingerückt wird, ist deshalb eine Konfigurationsinformation des Editors oder Druckers
  • Erschwerend kommt hinzu, dass bei der Anzeige im Texteditor der Unterschied zwischen Leerzeichen und einem Tabulatorzeichen meist nicht oder nur schwer ersichtlich ist

Texteditoren fügen häufig automatisch „weiche“ Zeilenumbrüche ein, wenn die Breite des verwendeten Bildschirmfensters zur Anzeige der gesamten Zeile nicht ausreicht

  • Auch bei Druckausgabe kann es zum Einfügen solcher „weichen“ Zeilenumbrüche kommen
  • Diese Zeilenumbrüche sind nicht in der Datei selbst enthalten und können bei Ausgabe auf einem anderen Medium an anderer Stelle erfolgen
  • Oft sind diese vom Anwender nur schwer von den eigentlichen, „harten“ Zeilenumbrüchen zu unterscheiden – also den Zeilenumbrüchen, die der Anwender selbst – beispielsweise unter Verwendung der entsprechenden Taste – in der Datei eingefügt hat und die auch in der Datei gespeichert werden

Die Texte können entweder auf einem Computer eingesehen werden oder durch den Drucker auf Papier gebracht werden

Datenübertragung
Die Datenübertragung über das Internet (durch Download bzw. Upload) ist für Laien kompliziert, zumal sie im Hintergrund geschieht

  • Das Transmission Control Protocol (TCP) zerlegt eine zu versendende Datei in einzelne kleinere Datenpakete und versendet diese getrennt voneinander über das Internet
  • Dabei kann ein Datenpaket verschiedene Knotenpunkte im Internet (wie Hostrechner, Server) durchlaufen, weil an jedem Knotenpunkt der optimale Weg für das Paket neu bestimmt wird

Da unterwegs die ursprüngliche Reihenfolge nicht eingehalten werden muss, hat das TCP auch die Aufgabe, die ursprüngliche Reihenfolge beim empfangenden Endgerät wiederherzustellen

  • Das Internet Protocol (IP) regelt die korrekte Adressierung (Rechnerarchitektur)|Adressierung der Datenpakete, damit die im Internet angeschlossenen Computer eindeutig identifiziert werden können
  • Die Datenübertragung der digitalen Daten beginnt mit dem Upload beim Absender und endet mit dem Download beim Empfänger


Anhang

Siehe auch

Links

Weblinks
  1. https://de.wikipedia.org/wiki/Textdatei