Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

Tietovirrat ja tiedostot. Anne Benson Tiedon koodaus it-järjestelmissä pienin tietoyksikkö bitti –kaksi tilaa: nolla (sähkövirtaa ei ole) yksi (sähkövirtaa.

Samankaltaiset esitykset


Esitys aiheesta: "Tietovirrat ja tiedostot. Anne Benson Tiedon koodaus it-järjestelmissä pienin tietoyksikkö bitti –kaksi tilaa: nolla (sähkövirtaa ei ole) yksi (sähkövirtaa."— Esityksen transkriptio:

1 Tietovirrat ja tiedostot

2 Anne Benson Tiedon koodaus it-järjestelmissä pienin tietoyksikkö bitti –kaksi tilaa: nolla (sähkövirtaa ei ole) yksi (sähkövirtaa kulkee) -8 bittiä muodostavat tavun eli merkin -merkkijärjestelmiä on erilaisia riippuen siitä, kuinka 8 (7) bittiä on organisoitu,esimerkiksi ASCII (American Standard Code for Information Interchange) ISO Latin-1 -DOS ASCII -EBCDIC (IBM suurkoneet)

3 Anne Benson Tiedon koodaus it-järjestelmissä Internetissä ei 8-bittinen järjestelmä riitä. Syy: kaikkialla maailmassa toimiva järjestelmä, lukemattomia kansallisia merkistöjä Internetin myötä käyttöön UNICODE, kahteen tavuun eli 16 bittiin perustuva järjestelmä (kehitys alkoi aiemmin 80-luvulla) UTF-8 käytetyimpiä Lisää tietoa esimerkiksi mainioista linkeistä - http://www.saunalahti.fi/wpoet/fin/char.htmlhttp://www.saunalahti.fi/wpoet/fin/char.html - http://fi.wikipedia.org/wiki/Merkist%C3%B6standardihttp://fi.wikipedia.org/wiki/Merkist%C3%B6standardi (huomaa ”rikkoutuneet ö ja väliviiva)

4 Anne Benson Tavuista tieto eli kenttä Tavut muodostavat tiedon: Javan alkeismuuttujat (fyysinen organisointi) –int 4 tavua –double 8 tavua pituus aina 11 merkkiä Loogisia, käyttäjän tietoja auton rekisteritunnus (String) AAa – Nnn vähintään kaksi kirjainta ja yksi numero henkilötunnus ppkkvvA/+/-nnnD,

5 Anne Benson Kentistä tietokokonaisuuksia (tietueita) Esimerkiksi nide tositteen tiedot kuorma-auton tiedot opiskelijan tiedot

6 Anne Benson Tietueista tiedostoja ja tietokantoja Esimerkiksi asiakkaat tuotteet tilaukset opiskelijat

7 Java ja tietovirrat -standarditietovirrat -merkkivirrat -poikkeustilanteisiin varautuminen

8 Tietovirrat IPO InputProcessOutput Syöttö Input Tulostus Output Käsittely Process Tietovarastot näppäimistö viivakoodi toinen prosessi verkon yli tiedosto tietokanta jne näyttö kirjoitin toinen prosessi verkkoon tiedosto tietokanta jne

9 Javan tietovirrat Fyysisiä laitteita Mistä tieto luetaan? Miten tieto käsitellään? Minne käsitelty tieto kirjoitetaan?

10 Javan tietovirrat : java.io – pakkaus Tiedon kaksi esitystapaa Pienin tiedon talletusyksikkö  Tavu, muodostuu kahdeksasta bitistä: mikä tahansa tieto InputStream OutputStream  Merkki, muodostuu kahdesta tavusta (16 bittiä): tekstimuotoinen tieto ReaderWriter

11 Javan tietovirrat : java.io – pakkaus Tiedon kaksi esitystapaa Pienin tiedon talletusyksikkö  Tavu, muodostuu kahdeksasta bitistä: mikä tahansa tieto InputStream OutputStream  Merkki, muodostuu kahdesta tavusta (16 bittiä): tekstimuotoinen tieto ReaderWriter

12 Merkkivirtaa luetaan näppäimistöltä 1.Määrittele tiedon lähde BufferedReader in = new BufferedReader (new InputStreamReader()); Java.lang-pakkauksen System.in: lähettää tavuvirtaa Talletetaan merkkivirtaa, enter lopettaa Väliaikainen talletuspaikka syöttöpuskuri: BufferedReader Tiedon lukeminen näppäimistöltä

13 Javan tietovirrat Näppäimistöltä tuleva merkkivirta BufferedReader InputStreamReader InputStream System.in

14 Javan tietovirrat Näppäimistöltä tuleva merkkivirta BufferedReader in = new BufferedReader (new InputStreamReader(System.in)); Mihin tieto talletetaan: Puskuri varataan lukemista varten Mistä tieto saadaan: näppäimistöltä mistä tieto hankitaan – minne tieto talletetaan Missä muodossa tieto saadaan? Luetaan tavuja, koodataan merkeiksi

15 Javan tietovirrat Tietovirran määrittely miten sovellus käsittelee tietoa missä muodossa tieto luetaan/kirjoitetaan mikä on tiedon fyysinen lähde/kohde

16 Javan tietovirrat Näppäimistövirran lukeminen Näppäimistö: BufferedReader syotto = new BufferedReader (new InputStreamReader(System.in)); Lukeminen: vastaus = syotto.readLine();

17 Javan tietovirrat Tulostaminen näytölle Tulostaminen näytölle 1.System.out.print – kirjoittaa riville, kirjoituksen jatkokohta jää samalle riville 2.System.out.println - aloittaa kirjoituksen uudelta riviltä Huomaa: System.out ja System.in ovat System-luokan attribuutteja. Ne määrittelevät aina työasemakohtaisen standardisyöttö- ja tulostusvirran. Eli ”System” on työasema, järjestelmä jossa sovellus tällä hetkellä toimii

18 Javan tietovirrat Tekstimuotoisen tiedoston käsittely 1.Kirjoitetaan tiedosto 2.Luetaan tiedoston sisältö ja tulostetaan näytölle Muistetaan varautua virhetilanteisiin

19 Tekstitiedoston lukeminen Tiedoston määrittäminen: BufferedReader luettava = new BufferedReader(new FileReader(tdstoNimi)); Lukeminen: String rivi; while ((rivi = luettava.readLine()) != null) System.out.println(rivi); luettava.close();

20 Poikkeustilanteet

21 Poikkeustilanteisiin varautuminen java.io – pakkauksen poikkeustilanteet, Exceptions, on suunniteltu I/O-poikkeusten käsittelyyn: FileNotFoundException : tiedostoa ei löydyFileNotFoundException IOException: ”yleinen” io-poikkeusIOException EOFException: tiedoston loppu - poikkeusEOFException

22 Poikkeustilanteet Poikkeustilanteisiin varautuminen Käytetään poikkeuksen kiinniottoa Lause/lauseet jotka voivat aiheuttaa poikkeuksen, laitetaan try-lohkoon. Poikkeustilanteen selvittely laitetaan catch lohkoon: try { lause1; lause2; } catch (Exception poikkeusolio) { System.out.println(poikkeusolio.getMessage()); }

23 Poikkeustilanteet Poikkeustilanteisiin varautuminen Kun sovelluksessa on lauseita, jotka voivat aiheuttaa poikkeustilanteen synnyn, otetaan ne käsittelyyn try – catch lauseilla. Yhteen try- lauseeseen voidaan yhdistää useita catch – lohkoja. try{ lause1; lause2; lause3; } catch(NumberFormatException nfe){ System.out.println(”Ei numeerista tietoa”); } catch (ArrayIndexOutOfBoundsException aei){ System.out.println(”Taulukkokäsittelyssä indeksointi väärin”); } catch (Exception e){ System.out.println(e.getMessage()); }

24 Poikkeustilanteet Poikkeustilanteisiin varautuminen Huomaa: - tarkat poikkeusilmoitukset laitetaan välittömästi try – lohkon jälkeen - yleinen Exception tulee aina viimeiseksi - loppuun voidaan lisätä finally – lohko, joka suoritetaan aina, oli aiempi suoritus tapahtunut try tai joistakin catch - lohkoista

25 Poikkeustilanteet Poikkeustilanteisiin varautuminen Käytetään poikkeuksen ”heittoa” edelleen metodia kutsuneeseen luokkaan: public static String getRivit(File tiedosto)throws FileNotFoundException, IOException Nyt kutsuvassa luokassa pitää olla try-catch –lohko

26 Poikkeustilanteet Poikkeustilanteisiin varautuminen Heittomekanismi: Luokka1 Luokka2 Luokka3 throws try{} catch {}

27 Lukeminen ja kirjoittaminen Tärkeitä pakkauksia ja luokkia 1.java.io.* sisältää tietovirtojen käsittelyn rajapinnat, luokat ja poikkeukset 2java.util StringTokenizer 3.java.lang.StringBuffer merkkijonon käsittely dynaamisesti

28 Lukeminen ja kirjoittaminen Näppäimistövirran ja tekstitiedoston käsittelyn esimerkit löytyvät osion 4 viikon yksi materiaalista


Lataa ppt "Tietovirrat ja tiedostot. Anne Benson Tiedon koodaus it-järjestelmissä pienin tietoyksikkö bitti –kaksi tilaa: nolla (sähkövirtaa ei ole) yksi (sähkövirtaa."

Samankaltaiset esitykset


Iklan oleh Google