Hoofdstuk 13.6 File-I/O. Files n40 verschillende klassen in library java.io Exceptions niet meegeteld... nMethodes voor het plegen van Input en Output.

Slides:



Advertisements
Verwante presentaties
Universiteit Leiden Inleiding programmeren in C++ Life Science & Technology 16 februari
Advertisements

Internationale marketing
Semantiek en Geo-Informatie Oracle SIM workshop 16 Juni 2010,
Inleiding computersystemen en netwerken deel 3 Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Waarom zijn we hier samen?
JAVA1 H 16. MULTITHREADING. 1. INLEIDING. Threads: delen van het programma die in concurrentie met elkaar gelijktijdig in executie gaan. Thread is een.
Programmeren in Java met BlueJ
GUI Router en Switch Afstudeerproject Maarten Diels & Geypens Björn.
Practica Computerlinguistiek Tekst en uitleg:
Van domeinklasse tot implementatie
Sitecore Item Web API & Mobile SDK
COSTA Common Set of Tools for Assimilation of Data OpenDA/COSTA voor operationele modellen en kalibratie rivier toepassingen Nils van Velzen Simona gebruikersdag.
‘Inleiding programmeren in Java’ SWI cursus: ‘Inleiding programmeren in Java’ 4e college Woe 19 januari 2000 drs. F. de Vries.
OOS Object geOrienteerd Software-ontwerp - 4 Codeerperikelen Singleton Specificeren Scheiding GUI en Domein Facade.
SQL injections en meer... PERU. web application vulnerabilities Cross Site Scripting (21.5%) SQL Injection (14%) PHP includes (9.5%) Buffer overflows.
Computervaardigheden en Programmatie Universiteit AntwerpenObjecten 4.1 Computervaardigheden en Programmatie 1rste BAC Toegepaste Biologische Wetenschappen.
Hoofdstuk 5: Bestanden.
Java C++ zVeilig zMachine- onafhankelijk zVeel libraries, ook voor Internet-I/O zSnel zNative executables zLibraries optimaal voor specifiek OS.
1 Toegepaste Informatica Keuzevak C++ 3°jaar. 2 Studiefiche  Software  Boek (hfst 3-5)  Presentatie (website)
1/1/ / faculty of Computer Science eindhoven university of technology 5B040:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 8(2): Multi-processing.
Algoritmiek Arrays: wat zijn dat en wat kun je ermee? Loops: hoe hou je ze in bedwang? Hoorcollege 6 - Ma. 9 okt L.M. Bosveld-de Smet.
Frank Stalpers en Ad Baars
Databases I (H.3) Het Entity-Relationship Model Wiebren de Jonge Vrije Universiteit, Amsterdam versie 2003.
Bestanden Hoofdstuk 18 Hoofdstuk 18.
GESPRG Les 8 Gestructureerd programmeren in C. 101 Array Meerdere variabelen van hetzelfde type kun je samennemen in één array variabele. Stel in een.
Opg.1a: substring } String substring(int a) { int t; for (t=a; t
Bluetooth Communicatie tussen computer en Brick Computer zet de connectie op, Brick wacht Enkel communicatie van de Brick naar de computer Lejos API: NXTConnecion.
JAVA -- H81 Exception: ongewone of foutieve situatie->prog. mislukt kan onderschept en afgehandeld worden. = een object van de klasse Throwable, gegenereerd.
JAVA -- H111 Socket (of communicatiekanaal): UNIX-term voor de communicatie tussen processen -> uitwisseling van gegevens -> meerdere machines bv. client.
Checked exceptions: FileNotFoundException, IOException, …
Maart 2001 De e-reader Blok pl. groep / faculteit UB / Studielandschap Student.
Algoritmiek Java GUIs, AWT en Swing API Overzicht te bestuderen stof, voorbeeldtentamen Hoorcollege 15 - Ma. 11 dec L.M. Bosveld-de Smet.
DB&SQL8- 1 VBA Visual Basics for Applications: eigen Office versie vanaf Office2000 gelijk voor alle applicaties Programmeren onder meer nodig voor Het.
JAVA1 H 22. COLLECTIONS FRAMEWORK. 1. INLEIDING. Collections framework Is een verzameling van data structuren, interfaces en algoritmen Meest voorkomende.
1 Hoofdstuk 11: Strings en karakters Inleiding In dit hoofdstuk bespreken we de mogelijkheden van de klassen : String StringBuffer Character StringTokenizer.
Visual Basic.Net - Overzicht
Best8-1 Les 8: Input/Output [Lat: datarum initus exitusque]
Computerarchitectuur
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology ; PIC assember programeren 1 Les 3 - onderwerpen Het.
Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag Het ARM bord met wat library functies.
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1  basis files: ram-rom.zip.
Security Technology PICT les 1
DU2PRES1 : C vervolg Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Beginselen van C opgaves… volgende week: ARM.
Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag GUI  command line redirection.
Economische impact sluiting Ford Genk Ludo Peeters en Mark Vancauteren (Universiteit Hasselt)
Hoorcollege 12 Afronding Penguin Pairs & overzicht Tick Tick.
Hoofdstuk 2 Java. Soorten Java-programma’s nJava Applet programma “leeft” op een WWW-pagina nJava Application programma heeft een eigen window nJavascript.
Arrays.
Nu maken en controleren, Alles inleveren
Computertechniek 2 – ARM assembler Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1  herhaling ARM assembler instructies.
Ted Nelson (1937- ) A file structure for the Complex, the changing, and the Interdeterminate.
BREIN Erik Bury, Antoine Vandermeersch en Anouk Van Laer.
C++ C++ als een verbetering van C Abstracte datatypen met classes Constructoren en destructoren Subklassen binding van functies 1.
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 C programmeren voor niet-C programmeurs les 2 definitie.
Hoofdstuk 17: FILES EN STREAMS.
Socket Programming Berkeley Sockets & WinSock 2
Introductie tot GoF patterns in Java
CONTROLESTRUCTUREN (DEEL 1)
Hoofdstuk 10.3 Tekst-editor: MDI-interface Dialogen Files lezen Abstracte klassen.
Bewerkingen met Strings
Programma zonder window commandline interface. Commandline programma public static void main (String [ ] params) { System. out. println (“Hoi allemaal!”);
 2 Fases ◦ Data van CPU overbrengen naar GPU  Mesh data, Render State, Blend State... ◦ GPU rendert scene  Programeerbare shaders verwerken input 
Reader en Writer Stream FileStream MemoryStream NetworkStream BufferedStream GZipStream CryptoStream TextWriter StreamWriter StringWriter BinaryWriter.
Java voor beginners Doel: Een spel maken in LWJGL Door: Jim van Leeuwen.
Reader en Writer leest en schrijft bytes leest string en char
Arjan Egges & Paul Bergervoet
Programmeren woensdag 4 oktober 2017.
Arjan Egges Paul Bergervoet Wouter van Toll
Digitale fotografie en bewerking
Python – For loop + strings
Transcript van de presentatie:

Hoofdstuk 13.6 File-I/O

Files n40 verschillende klassen in library java.io Exceptions niet meegeteld... nMethodes voor het plegen van Input en Output nHiërarchisch geordend d.m.v. subklassen

Klassen voor bewerking van files behandel de file als geheel bewerk de inhoud van de file benader de file nu eens hier, dan eens daar benader de file in volgorde Object File Random AccessFile Stream

Soorten Streams iedere byte apart beschikbaar multi-byte conversies lezen schrijven lezen schrijven Random AccessFile Stream Input Stream Output Stream Reader Writer Byte Stream Character Stream

Lezen uit een InputStream nint n; n = inpStr.read( ); if (n==-1)tf.setText(“niets gelezen”); elsetf.setText(“gelezen: ” + n ); nbyte [ ] a; n = inpStr.read(a); for (i=0; i<n; i++) verwerk( a[i] );

Creëren van een InputStream File InputStream Input Stream FileInputStream fis; fis = new FileInputStream(“hallo.txt”); n = fis.read(); subklasse van InputStream kent ook read

Creëren van een InputStream File InputStream ByteArray InputStream Input Stream ByteArrayInputStream bis; bis = new ByteArrayInputStream( ba ); n = bis.read(); byte [ ] ba; ba = new byte[100]; for (t...) ba[t] =...;

Creëren van een InputStream DataInputStream dis; dis = new DataInputStream( ); d = dis.readDouble(); eerder gemaakte InputStream fis File InputStream ByteArray InputStream File / String byte [ ] InputStream Buffered InputStream Data InputStream Direct InputStream Input Stream Filter InputStream

Creëren van een OutputStream File OutputStream ByteArray OutputStream File / String OutputStream Buffered OutputStream Data OutputStream Direct OutputStream Output Stream Filter OutputStream

Creëren van een Reader InputStream Reader String Reader InputStream String Reader Buffered Reader Filter Reader Direct Reader Indirect Reader

Totaal overzicht File-I/O convenience klassen Buffered InputStream Data InputStream File OutputStream ByteArray OutputStream Buffered OutputStream Data OutputStream PrintStream InputStream Reader String Reader Buffered Reader OutputStream Writer String Writer Buffered Writer Print Writer File InputStream ByteArray InputStream Filter InputStream Filter OutputStream Random AccessFile File / String byte [ ] InputStream File / String OutputStream InputStream String Reader OutputStream Writer Writer / OutputStream File Reader PushBack Reader File / String Reader File / String File Writer LineNumber Reader Filter Reader Filter Writer Direct InputStream Direct OutputStream Direct Reader Direct Writer Indirect Writer Input Stream Byte Stream Character Stream Indirect Reader Output Stream Reader Writer Stream

Soorten Files: keuzes nHele file of inhoud lezen? nStream of RandomAccess ? nCharacterStream of ByteStream ? nInput of Output ? n“echte” File of indirect?

Gebruik van I/O-klassen FileReader fr; fr = new FileReader ( “aap.txt” ); char c; c = fr. read (); BufferedReader br; br = new BufferedReader ( fr ); String s; s = br. readLine ( ); filenaam geef de FileReader in “beheer” aan de BufferedReader

Dialogen window met eigen menu hoort bij een ander window specifieke dialoog voor file-naam Component TextArea TextField Panel Window Applet Frame DialogFileDialog Button Canvas Label Scrollbar Text Component Container

class Hallo... { Hallo ( ) { } public void actionPerformed(...) { } Een dialoog voeren FileDialog fd; fd = new FileDialog( this, “Open File...”, FileDialog.LOAD ); fd. show ( ); s = fd. getFile ( ); “parent” window of SAVE retourneert filenaam of null

Editor-programma: actie public void actionPerformed (ActionEvent e) { e.getSource()(MenuItem) ( )( ). getLabel() String keus; keus = ; if (keus. equals (“Quit”)) System.exit(0); else if (keus. equals (“Open”)) this. open ( ); else if (keus. equals (“Save”)) this. save ( ); else if...

Editor-programma: open private void open ( ) { openDial. show ( ); String naam; naam = openDial. getFile ( ); if (naam != null) this. lees (naam);

Editor-programma: lees private void lees (String naam) { fr = new FileReader (naam); br = new BufferedReader ( fr ); FileReader fr; BufferedReader br; String regel; regel = br. readLine ( ); tekstveld. append ( regel + “\n” ); while ( regel != null ) { regel = br. readLine ( ); } try { } catch (...) {...}

Editor-programma: main public static void main (String [ ] params) { Editor e; e = new Editor ( ); e. setVisible (true); if (params.length > 0) e. lees ( params[0] ); } lees alvast een file in zoals gespecificeerd op de commandoregel

Totaal overzicht File-I/O Buffered InputStream Data InputStream File OutputStream ByteArray OutputStream Buffered OutputStream Data OutputStream PrintStream InputStream Reader String Reader Buffered Reader OutputStream Writer String Writer Buffered Writer Print Writer File InputStream ByteArray InputStream Filter InputStream Filter OutputStream Random AccessFile File / String byte [ ] InputStream File / String OutputStream InputStream String Reader OutputStream Writer Writer / OutputStream File Reader PushBack Reader File / String Reader File / String File Writer LineNumber Reader Filter Reader Filter Writer Direct InputStream Direct OutputStream Direct Reader Direct Writer Indirect Writer Input Stream Byte Stream Character Stream Indirect Reader Output Stream Reader Writer Stream