Java I/O. Input / Output stream Library Regelt I/O über verschiedene Kanäle. Führt notwendige Umwandlungen/Konvertierungen aus



Ähnliche Dokumente
Java I/O. Input / Output stream Library Regelt I/O über verschiedene Kanäle. Führt notwendige Umwandlungen/Konvertierungen aus

Datenströme in Java. Zeichenkonvertierung

Umleitung von Datenströmen

Vorlesung Programmieren

Grundlagen der Informatik für Ingenieure I

PROG 2: Einführung in die Programmierung für Wirtschaftsinformatiker

Vorlesung Programmieren. Java I/O: Input und Output mit Java. Ein-/Ausgabe von Daten. Java I/O. Heute. Grundlage fast aller Programme

Einführung. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 14: Sequentielle Ein-/Ausgabe, Ströme, Dateiorganisation.

Java Input/Output System (IO)

Einführung. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 14: Sequentielle Ein-/Ausgabe, Streams, Dateiorganisation.

Wo sind wir? Rudolf Berrendorf FH Bonn-Rhein-Sieg Programmiersprache Java 313

Streams und Files. Datenströme Byteweises Lesen und Schreiben Zeichenweises Lesen und Schreiben Dateien Serialisierung

Modellierung und Programmierung 1

Einstieg in die Informatik mit Java

Grundlagen der Informatik für Ingenieure I

Streams und Files. Datenströme Byteweises Lesen und Schreiben Zeichenweises Lesen und Schreiben Dateien Serialisierung

Grundlagen der Programmierung! Kapitel 10: Ein- und Ausgabe! Ziele dieses Kapitels! Datei! Das Problem!

Socket-Programmierung unter Java

Dynamische Datenstrukturen Jiri Spale, Algorithmen und Datenstrukturen - Dynamische Datenstrukturen 1

Streams. Gerd Bohlender. Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java

Socket-Programmierung unter Java

Programmieren 2 Java Überblick

Info B VL 7: Input/Output

Java Einführung IO (Eingabe/Ausgabe)

Einführung in die OOP mit Java Character-Streams Gliederung

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

Streams. V by WBR1&MOU2/BFH-TI. Berner Fachhochschule Hochschule für Technik und Informatik HTI

Grundlagen der Informatik für Ingenieure I

Arten von Streams. Daten. Bytes (8-Bits) Java Programm. Daten. Java Programm. Characters (16 - Bits)

Vorlesung Programmieren

Telecooperation/RBG. Grundlagen der Informatik 1 Thema 20: Ströme und Ein-/Ausgabe in Java. Dr. Guido Rößling

Java Schulung. Objektorientierte Programmierung in Java Teil VI: Wichtige Java Pakete. Prof. Dr. Nikolaus Wulff

Client-Server TCP/IP - Kodierung

Software Entwicklung 1

Abschnitt 18: Beispiel: I/O-Streams

Programmieren 2 Selbststudium Semesterwoche 6

Kapitel 12. Programmierkurs. Allgemeine Konzepte Byte-Streams versus Character-Streams

Programmieren I. Input / Output (I/O) Heusch 2. Bd. Ratz 19. Institut für Angewandte Informatik

Streams. Programmiermethodik. Eva Zangerle Universität Innsbruck

Einführung zur Aufgabengruppe 2

Java Fehlerbehandlung

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

Grundlagen zu Streams

Grundlegende Java Bibliotheken

Ein- und Ausgabe. Algorithmen und Datenstrukturen II 1

Client-Server TCP/IP - Kodierung

Dr. Monika Meiler. Inhalt

Eingabe und Ausgabe in Java. Dr. Horst Treiblmaier Abteilung für Wirtschaftsinformatik WU Wien

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

Sachwortverzeichnis. DataInputStream 139; 156 DataOutputStream 139; 156

Algorithmen und Datenstrukturen II

Programmieren I. Kapitel 15. Ein und Ausgabe

Kapitel 9. Ein- und Ausgabe. 9.1 Ströme

Problemstellung. Object1:Klasse1. Object2:Klasse2 att1: Klasse1 att2: 9. att1: att2: 17. Klasse1 att1 att2 Klasse2 att1 att2

Ein- und Ausgabe in Java

Grundlegende Java Bibliotheken

Programmieren I. Input / Output (I/O) Heusch 2. Bd. Ratz 19. Institut für Angewandte Informatik

Dateien, Streams. INE2 M. Thaler, Office TG ZHAW, M. Thaler, K. Rege, G. Burkert, E.

Streams und Files. Streams und Files. Datenströme Byteweises Lesen und Schreiben Zeichenweises Lesen und Schreiben Dateien Serialisierung

Vorlesung 11. Sitzung Grundlegende Programmiertechniken

Elisabeth Jung. Java 6 Das Übungsbuch Band II

Informatik 2 Typinformationen und Ein- und Ausgabe

Programmieren in Java

Programmieren 2 09 File-IO

1. Betrachte das folgende Programm:

JAVA für Einsteiger. Streams und Dateien. eden market Autor: Norman Lahme

Ausnahmen. Gilbert Beyer und Annabelle Klarl. Einführung in die Informatik. Zentralübung zur Vorlesung Einführung in die Informatik

Dateien: Allgemeines Dateien lesen Beispiel: CSV-Daten Filter Ausgabe in Dateien. Programmieren I. Dr. Klaus Höppner

Handbuch konsultieren!

DATENSTRÖME DIE JAVA-IO

Dateien/Streams. Arthur Zaczek. Okt 2015

Johannes Unterstein - TINF16 - Java - Sommersemester 2017 JAVA. Wiederholung

Liebe Leserin, lieber Leser, in der ersten Auflage von Programmieren lernen mit Java von Hans- Peter Habelitz sind einige Fehler zu korrigieren.

Inhaltsverzeichnis. Einleitung 19

Programmieren in Java

Betriebssysteme. Wintersemester Kapitel 4 Ein- / Ausgabe und Dateisysteme. Patrick Kendzo

Dateien und Verzeichnisse. Dateien und Verzeichnisse. Dateien und Verzeichnisse. Abstraktion von Dateien und Verzeichnissen: java.io.

Streams. Thomas Schwotzer

Javakurs für Fortgeschrittene

1 Byteströme. 2 Spezialisierungen von Strömen. Lösungsskizze Aufgabe 1. Hinweise Aufgabe 2. Streams (Ein-/Ausgabe) Sockets (Netzwerkprogrammierung)

Dateien/Streams. Arthur Zaczek

Java I/O, Serialisierung und Netzwerkprogrammierung

Modellierung und Programmierung 1

E Testen mit JUnit. E Testen mit JUnit. E.1 TestCase. Test-First-Ansatz. Sammelt alle Unit-Tests zu einer Klasse. Erbt von junit.framework.testcase.

Programmieren 2 09 File-IO

B.1 Überblick über die 1. Übung B.1 Überblick über die 1. Übung

B.2 Das Java Ein-/Ausgabesystem. B.1 Überblick über die 1. Übung. Streams (Ein-/Ausgabe) Sockets (Netzwerkprogrammierung) Serialisierung

Wie schreibt bzw. wie liest man die beiden unterschiedlichen Darstellungen?

Javakurs für Fortgeschrittene

TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK

B.2 Das Java Ein-/Ausgabesystem

Ausnahmen. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

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

Transkript:

Java I/O Input / Output stream Library Regelt I/O über verschiedene Kanäle Filesystem Console Netzwerk Intern Führt notwendige Umwandlungen/Konvertierungen aus 1

Furchtbar viele Klassen BufferedInputStream FileWriter PipedInputStream BufferedOutputStream FilterInputStream PipedOutputStream BufferedReader FilterOutputStream PipedReader BufferedWriter FilterReader PipedWriter ByteArrayInputStream FilterWriter PrintStream ByteArrayOutputStream InputStream PrintWriter CharArrayReader InputStreamReader PushbackInputStream CharArrayWriter LineNumberInputStream PushbackReader DataInputStream LineNumberReader RandomAccessFile DataOutputStream ObjectInputStream Reader File ObjectInputStream.GetField SequenceInputStream FileDescriptor ObjectOutputStream SerializablePermission FileInputStream ObjectOutputStream.PutField StreamTokenizer FileOutputStream ObjectStreamClass StringBufferInputStream FilePermission ObjectStreamField StringReader FileReader OutputStream StringWriter OutputStreamWriter Writer 2

Hierarchie der Klassen von java.io 1. zwei abstakte Klassen 1.InputStream 2.OutputStream 2. Streams, die Bytes transportieren, z.b.: 1.FileInputStream / FileOutputStream 2.ByteArrayInputStream/ByteArrayOutputStream 3. Streams, mit Verarbeitung (Konvertierungen, Serialisierung/Deserialisierung von Objekten, Pufferung z.b.: 1.DataInputStream 2.PrintStream 3.BufferedInputStream 3

Bytes transportierende Streams Streams, die Bytes transportieren ByteArrayInputStream ByteArrayOutputStream PipedInputStream PipedOutputStream FileInputStream FileOutputStream StringBufferInputStream Streams über URL-Verbindung (in java.net) Streams über SocketVerbindung (in java.net) 4

InputSteam die wichtigsten Funktionen int void abstract int int int available() Returns the number of bytes that can be read (or skipped over) from this input stream without blocking by the next caller of a method for this input stream. close() Closes this input stream and releases any system resources associated with the stream. read() Reads the next byte of data from the input stream. read(byte[] b) Reads some number of bytes from the input stream and stores them into the buffer array b. read(byte[] b, int off, int len) Reads up to len bytes of data from the input stream into an array of bytes. 5

Die Klasse File Klasse zur Ermittlung der Eigenschaften von Dateien Die Eigenschaften einer Datei ist nicht im Objekt abgelegt, sondern werden beim System erfragt long length(); boolean isdirectory(); boolean isfile(); boolean canread(); String[] listfiles(); String[] list(); 6

File f=new File(args[0]); if (!f.exists()!f.canread()) { System.out.println("Can't read "+f); return; } if (f.isdirectory()) { String[] files=f.list(); for(int i=0;i<files.length;i++) System.out.println(files[i]); } 7

File f=new File(fileName); int size=(int)f.length(); int bytesread=0; FileInputStream in = new FileInputStream(f); byte[] data=new byte[size]; while (bytesread<size) bytesread+=in.read(data,bytesread,size-bytesread); TextArea textarea =new TextArea(new String(data),24,80); 8

Die Klasse DataInputStream Gehört zur Gruppe der Filterstreams Führt Konvertierungen zu den primitiven Datentypen bei einer Eingabe aus. Typische Funktionen sind readint, readlong, readdouble usw. int readint(); Der Eingabestrom muss natürlich entsprechend formatierte Eingabezeichen enthalten (Text) Zur Eingabe von Text sollte man Funktionen der Klasse Reader verwenden. 9

BufferedReader int read() Read a single character. int read(char[] cbuf, int off, int len) Read characters into a portion of an array. readline() String Read a line of text. try { // FileInputStream fis=new FileInputStream(f); // InputStreamReader R=new InputStreamReader(fis); FileReader R=new FileReader(f); char[] data=new char[(int)f.length()]; R.read(data,0,(int)f.length()); Ret=new String(data); } catch (Exception e) { System.out.println("File Disappeared"); } 10

Streamklassen Input Output Abstrakte Klassen als Interface InputStream OutputStream Streams, die Bytes transportieren ByteArrayInputStream ByteArrayOutputStream PipedInputStream PipedOutputStream FileInputStream FileOutputStream StringBufferInputStream Streams über URL-Verbindung Streams über SocketVerbindung 11

Filterstreams DataInputStream DataOutputStream BufferedInputStream BufferedOutputStream ObjectInputStream ObjectOutputStream GZIPInputStream GZIPOutputStream ZipInputStream ZipOutputStream PrintStream 12

Reader Writer CharArrayReader CharArrayWriter InputStreamReader OutputStreamWriter PipedReader PipedWriter StringReader StringWriter BufferedReader BufferedWriter LineNumberReader FileReader FileWriter FilterReader FilterWriter PrintWriter 13