1. Allgemeine Datei (Binärdatei mit formatierten Inhalt)

Ähnliche Dokumente
Permanente Datenspeicherung. Permanente Datenspeicherung. Lesen und schreiben in Pascal. Permanente Datenspeicherung. Agenda für heute, 2.

Dateizugriff unter C

Permanente Datenspeicherung. Permanente Datenspeicherung. Agenda für heute, 1. Juni, 2006

Im Windows Betriebssystem sind Dateien eindeutig gekennzeichnet durch ihren Pfad, Dateinamen und nach einem Punkt die Dateierweiterung.

Syntax der Sprache PASCAL

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 23

Typisierte Dateien von Martin Strohal. Einleitung. Der Record

Buch-Add-Ons. Jürgen Bayer. Object Pascal-Tipps und Tricks. 1 Konvertieren und auf numerische Werte überprüfen 2

Dateioperationen Fachhochschule Würzburg-Schweinfurt Prof. Dr. Martin Ochs. Abspeichern und Einlesen von Texten (Strings) in Dateien

Die elementare Ausgabe von Daten auf externe Medien, wie Dateien und das Einlesen davon wird demonstriert.

Excel + VBA. Ergänzungen. Kapitel 1 Einführung in VBA Sequentielle Textdateien HARALD NAHRSTEDT. Erstellt am

Informatik GK 12 Klassen Klassen programmieren in Delphi am Beispiel der konkreten Klasse Auto

Programmiersprachen Einführung in C

Um mit dem Computer über ein Programm in Kontakt treten zu können braucht man sogenannte Ein- und Ausgabebefehle.

4.Grundsätzliche Programmentwicklungsmethoden

Übersicht PERL. !!!! Wichtig: Nach dem Befehl einem Strichpunkt setzen!!!!

15 Der strukturierte Datentyp»set«(Mengen)

5.1 Mehr Basistypen. (Wie viele Werte kann man mit n Bit darstellen?)

Programmieren in C/C++ und MATLAB

E-/A-Funktionalität nicht Teil der Programmiersprache

ios fstream ifstream

Beispiel: Temperaturumwandlung. Imperative Programmierung. Schwerpunkte. 3. Grundlegende Sprachkonstruktionen imperativer Programme

Institut für Computational Science Prof. Dr. H. Hinterberger. Praxismodul 1. Einführung in die Programmierung Erste Programme

\\//_. 18. Mai Goethe-Gymnasium Sebnitz. Datenstrukturen und Datentypen \\//_. Datentypen und. Datenstrukturen. einfache Datentypen

Beispiele elementarer Datentypen Ganze Zahlen (integer) Unterbereiche Gleitkommazahlen Festkommazahlen

Informationsverarbeitung im Bauwesen

5. Programmieren mit Pascal

Direkte Filezugriffe. Direkte Filezugriffe. Agenda für heute, 9. Juni, 2005

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

Informationsverarbeitung im Bauwesen

Strings. Daten aus Dateien einlesen und in Dateien speichern.

Fachbericht DPR. Name: René Wagener. Klasse: CI3O1. Fachlehrer: Herr Balog

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

3. Grundlegende Sprachkonstruktionen imperativer Programme

Zeichen. Datentyp char. char ch = 'x'; Page 1. Zeichen braucht man zur Verarbeitung von Texten, Namen, Bezeichnungen. Zeichencodes

Die Sicherung d. Programms obliegt d. IDE; die Sicherung d. Ergebnisse obliegt d. Programm(iererIn).

Modul 122 VBA Scribt.docx

Objektorientierte Programmierung. Agenda für heute, 1. April, Eines der drei wichtigsten Programmierparadigmen

GI Vektoren

13 OOP MIT DELPHI. Records und Klassen Ein Vergleich

Ein- und Ausgabe mit Dateien

10 Lesen und Schreiben von Dateien

file:///h:/dokumente/_fh/ ws /etinfoii/vorlesung/infoii...

Informationstechnik für Ingenieure

Klausur in 12.1 Themen: Zahlsysteme, Grundlagen von Delphi (Bearbeitungszeit: 90 Minuten)

AK-Automatisierungs und Kommunikationstechnik TI Technische Informatik. NWT Netzwerktechnik

Institut für Informatik Christian-Albrechts-Universität zu Kiel. Borland Delphi. Einführung in die Programmiersprache

R-Wörterbuch Ein Anfang... ein Klick auf einen Begriff führt, sofern vorhanden, zu dessen Erklärung.

Die Bibliothek SysLibFile.lib

Algorithmen und ihre Programmierung

Objektorientierte Programmierung. Agenda für heute, 26. März, Eines der drei wichtigsten Programmierparadigmen

Projekt 3 Variablen und Operatoren

Grundlagen der Objektorientierten Programmierung - IO-Tools

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;

Verwendete Variablen im Modul dbase

Variablen eines einfachen Typs können jeweils nur einen Wert annehmen. Turbo-Pascal stellt 6 einfache Datentypen zur Verfügung.

Arrays (Felder/Vektoren)

1 Bizz Buzz Woof (ca =18 Punkte) def read file(file_in): fp = open(file_in, r ) l = fp.read() fp.close() return l

4 ZEICHEN UND ZEICHENKETTEN

Einführung in die Programmierung mit VBA

GridView Daten-Import aus einer csv-datei GridView Daten-Import aus einer csv-datei

Ein- und Ausgabe mit Dateien

Betriebssysteme 1. Thomas Kolarz. Folie 1

Einführung in die Informatik Algorithmen und Datenstrukturen. Thema 12 Datenverarbeitung

Eigenschaften strukturierter Datentypen

Hochschule Darmstadt Informatik-Praktikum (INF 1) WS 2014/2015 Wirtschaftsingenieur Bachelor 4. Aufgabe Datenstruktur, Dateieingabe und -ausgabe

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke

Der Datentyp String. Stringvariable und -vergleiche

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java

Kapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Wiederholung Kapitel 4. Birgit Engels, Anna Schulze WS 07/08

Programmiersprachen Einführung in C. Unser erstes C-Programm. Unser erstes C-Programm. Unser erstes C-Programm. Unser erstes C-Programm

Programmierkurs Kapitel 4: Dateien Seite 1. Verwaltungfeld im Speicher. 4.1 Alternativen zur Programmierung der Eingabe und der Ausgabe

Algorithmen & Datenstrukturen

FEBE Die Frontend-Backend-Lösung für Excel

Die Klasse Collection (gb) implementiert eine Hash-Tabelle, deren Elemente aus einem Wert-Schlüssel-Paar

Programmieren I. Dateien: Allgemeines. Vorlesung 10. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Wintersemester 2010/2011

Lesen und Schreiben von Dateien

Java Cheatsheet. Mehrzeiliger Kommentar (beginnt mit /* und endet mit */)

java.io Ziel Ressourcen Page 1 Verstehen der unterschiedlichen I / O Möglichkeiten Anwenden der Java I/ O Klassen Java Tutorial Java API Dokumentation

Excel VBA. Teil Zusammenfassung! Was wir können sollten! V

Android-Apps Gegenüberstellung Delphi java

Arithmetik in der tcsh

Einstieg in die Informatik mit Java

Übersicht Shell-Scripten

Objekttypen. Referenzen, Objekte, Gleichheit, Wrapper, Arrays, mehr-dimensionale Arrays, Bildbearbeitung, krumme Arrays

Javaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden

Willkommen... Agenda für heute, 25. Februar, Studentinnen und Studenten der Studiengänge

Institut für Programmierung und Reaktive Systeme. Java 3. Markus Reschke

Dateien: Allgemeines Dateien lesen Beispiel: CSV-Daten Filter Ausgabe in Dateien. Programmieren I. Martin Schultheiß

Übersicht. Informatik 1 Teil 10 Dateien

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1

Funktionen nur wenn dann

Ein- und Ausgabe von Daten

Vorkurs Informatik WiSe 16/17

Transkript:

Datei ein komplexer Datentyp, der primär zur dauerhaften (persistenten) Speicherung von Daten auf einen externen Datenträger dient die wichtigsten Operationen, die mit Dateien durchgeführt werden, sind das Öffnen und Schließen von Dateien, sowie Lese- und Schreiboperationen wichtigste Formen von Dateien sind Textdateien und Binärdateien (Dateien mit formatiertem oder unformatiertem Inhalt) 1. Allgemeine Datei (Binärdatei mit formatierten Inhalt) besteht aus Datensätzen gleichen Typs (alle Datentypen außer Typ file) logische Satznummer (Nummerierung beginnt mit 0) logischer Satzzeiger weist auf aktuell ansprechbaren Datensatz kann nur vom erstellenden Programm bearbeitet werden Modellvorstellung: 0 Hansen Werner 43 -----> 1 Momsen Walter 11 2 Herder Klaas 21 eof Zeile... Datensatz, Zelle... Datenfeld, 1.Spalte..Satznummer, Pfeil... Satzzeiger Deklarationsbeispiel für Datensatz: type TDatensatz = record name, vorname : string[30]; alter : byte; end; var Person, Datensatz : TDatensatz; Die Variable Person ist vom Datentyp Verbund (record) Zusammenfassung von Daten auch unterschiedlichen Typs unter einem Bezeichner.

Zugriff: <Verbundbezeichner>.<Komponentenbezeichner> Person.name := 'Hansen'; Person.vorname := 'Werner'; Person.alter := 43; oder mit with- Anweisung with Person do begin name := 'Hansen'; vorname := 'Werner'; alter := 43; end; Datensatz := Person; //gleicher Typ vorrausgesetzt Zurück zur allgemeinen Datei: Deklaration Dateityp, Dateivariable: type <Typbezeichner> = file of <Typbezeichner>; Bsp.: type TDatei = file of TPerson; var dateivar : TDatei; Die Dateivariable dateivar speichert Informationen wie den Dateinamen (DOS-Name) und darüber, ob die Datei geöffnet ist oder nicht (zum Lesen, Schreiben geöffnet oder geschlossen). Der Dateiname ist eine Zeichnekette, wie z.b. 'Personenliste.dat'. Eine andere Deklarationsmöglichkeit: type TDatei = record dateivar : file of TPerson; dateiname : string; end; Welche Deklarationsart man nutzt, ist m.e. Geschmackssache.

Dateioperationen (Delphi)- Pascal Bedeutung procedure assignfile (var dateivar; dateiname); - ordnet der Dateivariablen den DOS- Bezeichner (dateiname) der Datei zu - muss vor dem Öffnen der Datei ausgeführt werden - das Ansprechen der datei erfolgt nun immer unter Verwendung der Dateivariablen procedure rewrite (var dateivar); - erzeugt auf dem Datenträger eine leere Datei mit dem durch assignfile zugeordneten Dateinamen - existiert die Datei bereits, so geht der Dateiinhalt verloren - in die Datei kann geschrieben werden procedure reset (var dateivar); - öffnet eine auf dem Datenträger existierende Datei zum Lesen und Schreiben - der Satzzeiger verweist auf den ersten Datensatz (Satznummer 0) procedure write (var dateivar; datensatz) - schreibt einen Datensatz datensatz in die Datei dateivar an die aktuelle Satzzeigerposition - der Satzzeiger rückt um eine Position weiter procedure read (var dateivar; datensatz) - liest einen Datensatz aus der Datei dateivar, von aktueller Satzzeigerposition in die Variable datensatz - der Satzzeiger rückt um eine Position weiter procedure seek (var dateivar; position); - setzt den Satzzeiger der Datei dateivar auf den Datensatz mit der durch position angegebenen Satznummer function eof (var dateivar):boolean; - liefert Funktionswert vom Typ boolean - TRUE, falls der Satzzeiger auf das Dateiende weist, sonst FALSE function filepos (var dateivar):integer; - liefert einen ganzzahligen Wert die aktuelle Satzzeigerposition function filesize (var dateivar) - liefert die Anzahl der in der Datei gespeicherten Datensätze procedure closefile (var dateivar); - schließt die Datei dateivar procedure erase (var dateivar); - löscht die Datei, die der Dateivariablen dateivar zugeordnet ist auf dem Datenträger - die Datei muss vorher geschlossen werden procedure rename (var dadteivar; neuername); - die mit dateivar verbundene Datei erhält den Dateinamen der mit neuername (Zeichenkette) übergeben wird

Weitere Beispiele für allgemeine Dateien: type TGanzzahlDatei = file of integer; TDezimalzahlDatei = file of real; TReihung = array[1..9] of byte; TreihungDatei = file of TReihung; TMenge = set of char; TMengeDatei = file of TMenge; TVerbund = record zahl:real; wahrheit:boolean; zeichen:char; zeichenkette:string[10]; end; TVerbundDatei = file of TVerbund;

2. Textdateien enthalten ASCII-Zeichen (druckbare Zeichen, Steuerzeichen) durch die Steuerzeichen #13#10 (Wagenrücklauf CR, Zeilenvorschub LF) kann eine Zeilenstruktur der Textdatei erreicht werden Deklaration Dateivariable: var txtdateivar : textfile; Die Dateivariable txtdateivar speichert Informationen wie den Dateinamen (DOS-Name) und darüber, ob die Datei geöffnet ist oder nicht (zum Lesen, zum Schreiben, zum Anfügen geöffnet oder geschlossen). Der Dateiname ist eine Zeichnekette, wie z.b. 'Personenliste.txt'. Das Kürzel 'txt' muss nicht zwingend verwendet werden. Veranschaulichung Inhalt einer Textdatei: 'Inhaltder Textdatei#9mit Tabulatorschritt#13#10neuer Zeile.#13#10Und noch ner Zeile.gefolgt von einer Leerzeile#13#10#13#10Dann ist die Datei zuende.' Anzeige in einem Editor: Inhaltder Textdatei mit Tabulatorschritt neuer Zeile. Und noch ner Zeile.gefolgt von einer Leerzeile Dann ist die Datei zuende. Die Datei (beispiel.csv): Meier;Willi;12.01.1991;#13#10 Hansen;Hans;12.01.1991;#13#10

Dateioperationen (Delphi)- Pascal Bedeutung procedure assignfile (var dateivar; dateiname); - ordnet der Dateivariablen den DOS- Bezeichner (dateiname) der Datei zu - muss vor dem Öffnen der Datei ausgeführt werden - das Ansprechen der datei erfolgt nun immer unter Verwendung der Dateivariablen procedure rewrite (var dateivar); - erzeugt auf dem Datenträger eine leere Datei mit dem durch assignfile zugeordneten Dateinamen - existiert die Datei bereits, so geht der Dateiinhalt verloren - in die Datei kann nur geschrieben werden procedure reset (var dateivar); - öffnet eine auf dem Datenträger existierende Datei NUR zum Lesen - der Satzzeiger verweist auf das erste Zeichen procedure append (var dateivar); - öffnet Textdatei zum Anfügen von Zeichen oder Zeichenkette - Satzzeiger steht auf Dateiende procedure write (var dateivar; zeichenkette); procedure write (var dateivar; zeichen); - schreibt den Wert von Zeichenkette- oder Zeichen- in die Datei txtdateivar an die aktuelle Satzzeigerposition - der Satzzeiger steht hinter dem letzten procedure writeln (var dateivar; zeichenkette); procedure writeln (var dateivar; zeichen); lies: writeline procedure read (var dateivar; zeichenkette); procedure read (var dateivar; zeichen); procedure readln (var dateivar; zeichenkette); lies: readline geschriebenen Zeichen - schreibt den Wert von Zeichenkette- oder Zeichen- in die Datei txtdateivar an die aktuelle Satzzeigerposition und fügt einen Wagenrücklauf- Zeilenvorschub hinzu schreibt also eine Textzeile in die Datei - liest eine Zeichenkette oder ein Zeichen aus der Datei txtdateivar, von aktueller Satzzeigerposition in die Variable zeichenkette bzw. zeichen - der Satzzeiger hinter dem zuletzt gelesenen Zeichenz - liest eine Zeichenkette (Textzeile) aus der Datei txtdateivar, von aktueller Satzzeigerposition in die Variable zeichenkette - der Satzzeiger am Beginn der nächsten Textzeile, also nach den Zeichen #13#10 (CR, LF) function eof (var dateivar):boolean; - liefert Funktionswert vom Typ boolean - TRUE, falls der Satzzeiger auf das Dateiende weist, sonst FALSE procedure closefile (var dateivar); - schließt die Datei txtdateivar procedure erase (var dateivar); - löscht die Datei, die der Dateivariablen dateivar zugeordnet ist auf dem Datenträger - die Datei muss vorher geschlossen werden procedure rename (var dadteivar; neuername); - die mit dateivar verbundene Datei erhält den Dateinamen der mit neuername (Zeichenkette) übergeben wird