Arjan Egges Paul Bergervoet Wouter van Toll

Slides:



Advertisements
Verwante presentaties
Van domeinklasse tot implementatie
Advertisements

Bestanden Hoofdstuk 18 Hoofdstuk 18.
MICPRG Les 11 Microcontroller Programmeren in C. 112 Datastructuren in C Werkgeheugen (PC en microcontroller): Statische datastructuren (vaste grootte):
Consoletoepassing Variabelen Klassen
1 Datastructuren Introductie tot de programmeeropgaven in C++ Jan van Rijn
Opgave 2a nMet een InputStream lees je bytes uit een binare file nMet een Reader lees je characters uit een tekstfile.
Herhaling Java-programmatie en geautomatiseerd testen (vervolg)
Constructoren Genesis 1:1 Aarde a1 = new Aarde(“Adam”, “Eva”);
Tircms02-p les 3 Functies Strings Structuren. Functies 1. main() 2. { int k; k = 10 ; printf(“%d\n”,fac(k)); } 3. int fac(n) int n; 4. { int f; f= 1;
Scope. Scope van variaben/methoden Een variabele is te gebruiken binnen de { en } waarbinnen hij is aangemaakt. Hetzelfde geld voor een methode { int.
Hoofdstuk 10.3 Tekst-editor: MDI-interface Dialogen Files lezen Abstracte klassen.
Programma zonder window commandline interface. Commandline programma public static void main (String [ ] params) { System. out. println (“Hoi allemaal!”);
Java Objectgeoriënteerd Programmeren in Java met BlueJ
 C++ heeft een inheritance mechanisme  Manier om functionaliteit te ‘erfen’ van een parrent class ◦ Polymorphisme ◦ Zoals we het ook in C# kennen.
Reader en Writer Stream FileStream MemoryStream NetworkStream BufferedStream GZipStream CryptoStream TextWriter StreamWriter StringWriter BinaryWriter.
Gelijkheid van Strings static bool Gelijk( string s, string t) { } int m = s.Length; int n = t.Length; for (i=0; i
Herhaling: He who does not learn from history, is doomed to repeat it.
Opbouw van het Netwerk void Lees (string filenaam ) { while ( (regel=sr.ReadLine()) != null ) { string [] r = regel.Split(" ", StringSplitOptions.RemoveEmpty.
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1  de track structuur van een MIDI file interpreteren.
Java voor beginners Doel: Een spel maken in LWJGL Door: Jim van Leeuwen.
Bestanden Lezen Schrijven Afbeeldingen. Bestandstypen.txt.png eigen.
Game Object Structuren
Objectgeoriënteerd Programmeren (2)
Aanroep van een methode voert opdrachten uit in de body daarvan
Lezen en schrijven van tekst
2e Deeltentamen Nagekeken werk ligt voor in de zaal (alfabetisch op achternaam) Neem het even mee, de uitwerking wordt in het college besproken Discussies.
Voortborduren op eerder gedaan werk
Gameprogrammeren: Objecten en geheugen
Reader en Writer leest en schrijft bytes leest string en char
Gameprogrammeren: Lists en interfaces
Gameprogrammeren: Keuzeopdrachten
Gameprogrammeren: Overerving
Hoofdstuk 9.2 Strings.
Gameprogrammeren: Char en String
Letterfrequentie turven
Gameprogrammeren: Variabelen, declaraties en toekenningen
Gameprogrammeren: Expressies
Gameprogrammeren: Methoden
Arjan Egges & Paul Bergervoet
Publieksvraag // schrijf een static methode die telt hoe // vaak een symbool voorkomt in een string // voorbeeld-aanroep: int n; n = Demo . Freq(’e’,
Gameprogrammeren: Overerving in Painter
Lezen en schrijven van tekst
Gameprogrammeren: Player input in Painter
Gameprogrammeren: Programmastructuur
Basis Gameprogrammeren
Gameprogrammeren: Tiles in Tick Tick
Gameprogrammeren: Willekeurigheid (Randomness)
Tinpro015b-les5 Invoer en Uitvoer.
Gameprogrammeren: Herhalingen
Gameprogrammeren: Properties
Arjan Egges & Paul Bergervoet
Gameprogrammeren: Game Basics
Arjan Egges & Paul Bergervoet
Voorbeeld: Simulatie van bewegende deeltjes
Voortborduren op eerder gedaan werk
Libraries, Platform Games
Gameprogrammeren: Recursie
Gameprogrammeren: Exceptions
Practicum: schets-editor
Opdrachten herhalen public void tekenScherm (object o, PEA pea)
Gameprogrammeren: Abstracte klassen
Gameprogrammeren: Interfaces
Gameprogrammeren: Tiles en File I/O in Tick Tick
Game: omgaan met tijd (Jewel-Jam)
Gameprogrammeren: Klassen en objecten
Arjan Egges & Paul Bergervoet
Object Communication (Jewel Jam)
Gameprogrammeren: Enemies in Tick Tick
Gameprogrammeren: Sprite sheets
Gameprogrammeren: Arrays
Transcript van de presentatie:

Arjan Egges Paul Bergervoet Wouter van Toll Input/Output Arjan Egges Paul Bergervoet Wouter van Toll

Klassen om files te lezen en te schrijven Object Stream TextReader TextWriter FileStream StreamReader StreamWriter store MemoryStream StringReader StringWriter NetworkStream BinaryReader BinaryWriter XmlReader XmlWriter BufferedStream decorator GZipStream CryptoStream

Klassen om files te lezen en te schrijven leest en schrijft bytes leest string en char schrijft string en char Stream FileStream StreamReader StreamWriter MemoryStream leest/schrijft een file NetworkStream leest/schrijft het geheugen leest/schrijft het netwerk

levert getal tussen 0...255 of –1 als er niets meer is Methoden van Stream class FileStream { int Read (byte[] doel, int max) { for (int t=0; t<max; t++) { int b = this.ReadByte(); Stream if (b==–1) return t; FileStream doel[t] = (byte) b ; } MemoryStream return max; } NetworkStream } FileMode.Append FileStream fs; FileMode.Create fs = new FileStream ("test", FileMode.Open ); levert getal tussen 0...255 of –1 als er niets meer is int b = fs.ReadByte( ) ; byte [ ] ruimte = new byte[100]; int n = fs.Read ( ruimte, 100 ) ;

Methoden van Stream class FileStream Stream { int Read (byte[] doel, int max) { for (int t=0; t<max; t++) { int b = this.ReadByte(); Stream if (b==–1) return t; FileStream doel[t] = (byte) b ; } MemoryStream return max; } NetworkStream virtual int ReadByte ( ) { /* leeg */ } } class FileStream : Stream { override int ReadByte ( ) { return ............... } }

Methoden van Stream abstract class FileStream Stream { int Read (byte[] doel, int max) { for (int t=0; t<max; t++) { int b = this.ReadByte(); Stream if (b==–1) return t; FileStream doel[t] = (byte) b ; } MemoryStream return max; } NetworkStream abstract virtual int ReadByte ( ) ; { /* leeg */ } } class FileStream : Stream { override int ReadByte ( ) { return ............... } }

Decorator Streams Stream str; str = new FileStream ( "test", FileMode.Create ); Stream GZipStream klein; FileStream klein = new GZipStream ( str ) ; store MemoryStream klein.Write( mijnByteArray ); NetworkStream geef het onderliggende store-medium "in beheer" je kunt decorators combineren BufferedStream decorator GZipStream CryptoStream geheim; CryptoStream geheim = new CryptoStream ( klein ) ;

Reader en Writer leest en schrijft bytes leest string en char schrijft string en char Object Stream TextReader TextWriter FileStream StreamReader StreamWriter store MemoryStream StringReader StringWriter NetworkStream vanuit een Stream vanuit een String BufferedStream decorator GZipStream CryptoStream

Reader en Writer leest en schrijft bytes leest string en char schrijft string en char Object Stream TextReader TextWriter FileStream StreamReader StreamWriter store MemoryStream StringReader StringWriter NetworkStream Stream str; str = new FileStream ( "test.txt", FileMode.Open ); BufferedStream TextReader lezer; decorator GZipStream lezer = new StreamReader ( str ); CryptoStream string s; s = lezer . ReadToEnd ( );

Reader en Writer leest en schrijft bytes leest string en char schrijft string en char Object Stream TextReader TextWriter FileStream StreamReader StreamWriter store MemoryStream StringReader StringWriter NetworkStream Stream str; str = new FileStream ( "test.txt", FileMode.Open ); BufferedStream TextReader lezer; decorator GZipStream lezer = new StreamReader ( str ); lezer = new StreamReader ( "test.txt" ); CryptoStream convenience-methode string s; s = lezer . ReadToEnd ( );

Reader en Writer leest en schrijft bytes leest string en char schrijft string en char Object Stream TextReader TextWriter FileStream StreamReader StreamWriter store MemoryStream StringReader StringWriter NetworkStream BinaryReader BinaryWriter XmlReader XmlWriter BufferedStream leest XML-teksten leest int en double decorator GZipStream CryptoStream

statische methode die het constructie-werk doet (wat de constructor nodig heeft) Object Stream TextReader (Stream) (Filenaam ,FileMode) FileStream StreamReader (Filenaam) store Memory Stream StringReader ( ) (String) Network Stream BinaryReader (Socket) (Stream) XmlReader .Create(…) Buffered Stream (Stream, int) decorator GZip Stream statische methode die het constructie-werk doet (Stream, CompressionMode) Crypto Stream (Stream, CryptoStreamMode)

Publieksvraag Schrijf een methode WriteFibonacci die de eerste n waarden van de Fibonaccireeks naar een bestand schrijft Bestandsnaam en n zijn parameters

Uitwerking public void WriteFibonacci(string path, int n) { StreamWriter fileWriter = new StreamWriter(path, false); int first = 1, second = 1; fileWriter.WriteLine("1\n1"); for (int i = 0; i < n - 2; i++) int newval = first + second; first = second; second = newval; fileWriter.WriteLine(newval.ToString()); } fileWriter.Close();