Programozás III STRING-XML.

Slides:



Advertisements
Hasonló előadás
Weblapkészítési tudnivalók 2: Útmutató az elnevezésekhez Pék Ágnes © 2009.
Advertisements

Access Adatbáziskezelés
C++ programozási nyelv Gyakorlat hét
Dr. Török Béla Általános Iskola 1142 Bp. Rákospatak utca 101.
Programozás III KOLLEKCIÓK 2..
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
Bemutatkozik az XML.
JavaScript.
© Kozsik Tamás Tömbök, kollekciók és egyéb alaposztályok.
© Kozsik Tamás Beágyazott osztályok A blokkstrukturáltság támogatása –Eddig: egymásba ágyazható blokk utasítások Osztálydefiníciók is egymásba.
Sztringek.
Adatbázis-kezelés.
Bevezetés a Java programozásba
Bevezetés a Java programozásba
Bevezetés a Java programozásba
Kollekciók IO stream-ek Generikus kollekciók.  objektumokat tartalmaznak  nincsen előre meghatározott méretük, bármennyi objektumot pakolhatok beléjük.
Fájlkezelés, IO Kivételkezelés Belső osztályok
Vizuális modellezés Uml és osztálydiagram UML eszközök
Abstract osztályok és interface-ek Beolvasás és kiíratás 7. gyakorlat.
Programozás II. 3. Gyakorlat C++ alapok.
Fejlett Programozási Technológiák II. Világos Zsolt 1. gyakorlat.
Tömbök ismétlés Osztályok Java-ban Garbage collection
Hernyák Zoltán XML validálás.
A Java programozási nyelvSoós Sándor 1/17 Java programozási nyelv 4. rész – Osztályok II. Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai.
Adatbázis-kezelés ACCESS program:
WEB Technológiák Dr. Pance Miklós – Kolcza Gábor Miskolci Egyetem.
Web-grafika (VRML) 10. gyakorlat Kereszty Gábor. Script típusok Elemi típusok: szám: egész vagy lebegőpontos – int / float – 1 / 1.1 string: ‘Hello World!’
A JAVA TECHNOLÓGIA LÉNYEGE Többlépcsős fordítás A JAVA TECHNOLÓGIA LÉNYEGE Platformfüggetlenség.
Bevezetés a C++ programozási nyelvbe
XML támogatás adatbázis-kezelő rendszerekben
Összetett adattípusok
Összetett adattípusok a Pascal nyelvben
Vizuális alkalmazások a FoxProban Páll Éva Boglárka.
XHTML 1. óra. Miért térjünk át HTML-ről XHTML- re? HTML-szabványban tartalom és forma összemosódott HTML 4.0 szabványban stíluslapok használatát javasolták.
Hernyák Zoltán Programozási Nyelvek II.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
1 Hernyák Zoltán Web: Magasszintű Programozási Nyelvek I. Eszterházy.
Javascript Microsoft által készített kiegészítése Statikus típusosság Nagy projektek Windows 8 fejlesztésénél WinRT egy részét ebben írták Nyílt forráskódú,
Delphi Készítette: Rummel Szabolcs Elérhetőség:
1Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Programozás I. 8. gyakorlat.
Egy szövegszerkesztő legegyszerűbb szolgáltatásai
Visual Basic 2008 Express Edition
Visual Basic 2008 Express Edition
Komoróczy Tamás 1 Java programozási nyelv Stringek.
Java programozási nyelv Tömbök
Java programozási nyelv Metódusok
Java programozási nyelv Adatbekérés konzolról
Adatbázis-kezelés.
XML adatkezelés 1. témakör Az XML szabvány.
Programozás III UNIT TEST. És tényleg: Honnan lehet tudni, hogy működik-e vagy sem?
Java web programozás 11..
A projekt célja Egy 2 dimenziós rakpart készítése a TBA cég megbízásából. Az Eclipse plug-in megengedi a felhasználónak, hogy különböző tárgyakat rajzoljon.
XML Mi az XML?  Extensible Markup Language  Kiterjeszthető jelölő nyelv  Adatok, adatstruktúrák leírására szolgál  A HTML és az SGML tapasztalataira.
Programozás III KIVÉTEL – CSOMAG. CSOMAGOK Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek. A Java is csomagok halmaza: csomagokban.
Webprogramozó tanfolyam
HTML ÉS PHP (Nagyon) rövid áttekintés. ADATBÁZISRENDSZEREK MŰKÖDÉSI SÉMÁJA Felh. interakció DB Connector MySQL ? A gyakorlaton:
Programozás III CSOMAG. CSOMAGOK Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek. A Java is csomagok halmaza: csomagokban van.
C Programozási alapok.
Webes MES keretrendszer fejlesztése Kiss Miklós Dániel G-5S8 Tervezésvezető: Dr. Hornyák Olivér.
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás I. 3. gyakorlat.
TÁMOP /1-2F JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam A Character osztály. String és Stringbuffer osztályok.
Programozás III ÖTLETEK A FELADATMEGOLDÁSHOZ. A HF-EK APROPÓJÁN Néhány javaslat: 1. Jó lenne, ha a feladatmegoldás előtt átnéznék az előadás-anyagokat.
TÁMOP /1-2F JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam Osztályok, objektumok definiálása és alkalmazása. Saját.
Programozás III JPA.
Készítette: Kiss András
Életciklus-követés az e-törzskönyvezésben
Hibernate / EclipseLink / OpenJPA összehasonlítás
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
Informatika Oktató: Katona Péter.
Előadás másolata:

Programozás III STRING-XML

FileWriter(File file, boolean append) BEVEZETÉS Sok adatkezeléssel kapcsolatos feladat van. a/ Adatok fájlban b/ Adatbázisban Megjegyzés: Múltkor kimaradt a FileWrite egyik konstruktora: FileWriter(File file, boolean append) Ha a második paraméter true  append-re nyitja meg a fájlt.

FÁJLKEZELÉSBEN (IS) HASZNOS OSZTÁLYOK: STRING, STRINGBUFFER, STRINGTOKENIZER Szövegek tárolására, manipulálására alkalmas osztályok. Mindkettő a java.lang csomag része. A String típusú objektum állapota nem, illetve alig változtatható, a StringBuffer típusú objektumok állapota változtatható. Konkatenáció helyett jobb a StringBuilder osztály használata.

String szoveg = new String(” ez egy szöveg”); STRING OSZTÁLY Mint minden osztályt, a String osztályt is példányosítással kellene létrehoznunk, vagyis így: String szoveg = new String(” ez egy szöveg”); De megadhatjuk az eddig megszokott módon is: String szoveg = ” ez egy szöveg”; ekkor a rendszer automatikusan elvégzi a példányosítást.

A STRING OSZTÁLY NÉHÁNY METÓDUSA int length() – visszaadja a szöveg hosszát. char charAt(int index) – visszaadja az index indexű karaktert. String toLowerCase(); String toUpperCase() – visszaadja a szöveg csupa kis-, ill. nagybetűs változatát String replace(char regi, char uj) – visszaad egy olyan szöveget, amelyben minden régi karaktert újra cserélt. boolean equals(Object valami) – összehasonlítja az objektumot a paraméterként megadott másik objektummal. stb.

A STRINGBUFFER OSZTÁLY Egy String objektumot nem tudunk lényegesen megváltoz-tatni. Ha ilyen feladatunk van, akkor a StringBuffer osztályt kell példányosítanunk. Az így deklarált szövegek bővíthetők (append metódus), ki lehet törölni belőlük részleteket (delete, deleteCharAt metódusok), ki lehet cserélni rész-szöveget (replace metódus), meg lehet fordítani az objektum szövegét (reverse metódus), stb. – ld. help

STRINGBUFFER OSZTÁLY – PÉLDA HF: Állapítsa meg egy tetszőleges mondatról, hogy palindróma-e.

STRINGTOKENIZER OSZTÁLY A java.util csomag osztálya. Segítségével egy szöveg könnyen részekre bontható. Alapértelmezett elválasztójelek: fehér szóköz (szóköz, tabulátor, sor- és lapvég-jelek) De mi magunk is definiálhatunk elválasztójeleket.

STRINGTOKENIZER OSZTÁLY Néhány metódus: boolean hasMoreTokens() String nextToken() String nextToken(String sajat_elvalasztojel) int countTokens()

STRINGTOKENIZER OSZTÁLY – PÉLDA

EZ MI? Egy üres, frissen generált JFrame form.

EZ MI? Egy NetBeans projekt: Több XML fájl is szerepel a projektben. Mi lehet a szerepük?

EZ MI? Pl.: a project.xml:

MI AZ AZ XML? Az XML általános célú platform-független nyelv, amely az adat-formátumok használatánál biztosítja a teljes hordoz-hatóságot. Nem határozza meg – a nyelv jelölőelem-készletét (tag set) és – a nyelvtanát sem. ezért teljes mértékben kiterjeszthető (innen ered a neve is) Ez a lényeges különbség közte és a HTML között.

MI AZ AZ XML? Létrehozását a nyílt rendszerek térhódítása és az Internet tette szükségessé. A Java nyelv és az XML közötti érdekes hasonlóság: – a Java a futtatható formában hordozható programok nyelve, – az XML a hordozható adat készítésének az eszköze. Főként adatok rugalmas kezelésére használható. Ezért válhat fontossá Java programok esetén is.

MI AZ AZ XML? Az XML formátumú dokumentumok fokozatosan kezdik leváltani az ASCII alapú szövegfájl alkalmazásokat. Oka: – az ASCII fájl-ok semmilyen leíró, kezelő információt (meta adatot) nem tartalmaznak saját magukról – az XML alapú dokumentumok a benne tárolt adatok vagy hivatkozások (szöveg, kép, …) értékein felül rendelkeznek plusz információkkal is, ugyanakkor továbbra is szövegalapúak.

MI AZ AZ XML? Az XML dokumentumokban az adatok értékein túl olyan további címkéket és hivatkozásokat helyezhetünk el, amelyek utalnak az adat természetére, a dokumentum szerkezeti és tartalmi felépítésére, továbbá ezek az információk felhasználhatóak a dokumentum érvényességének vizsgálatához is. Különböző alkalmazási lehetőségei vannak, pl.:

XML ALKALMAZÁSOK 1. Példa: Adatok rugalmas kezelése : – Előfordulhat, hogy különböző jellegű azonosító adatokra van szükség (pl. természetes személy vagy cég ) – Egyes adatfajták mérete lehet nagyon eltérő. – Egyes adatok ugyanolyan szerkezetűek és többször is ismétlődhetnek pl. telefon, mobil, fax vagy állandó lakcím, levelezési cím, stb. Ekkor egy lehetséges megoldás: XML

XML ALKALMAZÁSOK 2. Példa: www.inkscape.org – XML alapú grafikus szerkesztő <?xml version="1.0" encoding="UTF-8" standalone="no"?> <!-- Created with Inkscape (http://www.inkscape.org/) --> <svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" width="210mm" height="297mm" id="svg2385" sodipodi:version="0.32" inkscape:version="0.46" sodipodi:docname="rajz.svg" …

XML ALKALMAZÁSOK További alkalmazások: – Szövegfeldolgozás Pl.: RSS (Rich Site Summary), amely XML alapú, webtartalom elosztására és publikálására alkalmas formátum csoport. Főleg az újabb oldalak, hírportálok, blogok használják Open Office: XML formátumban menti a dokumentumait – E-business pl. EDI(Electronic Data Interchange ) XML – Kép- és hangtárolás, telefon, stb.

XML ALKALMAZÁSOK XML: egyszerű adathordozhatóság A programok jobban tudnak egymással kommunikálni A lehető legtávolabbi platformon levő gépek rendszerei között is ki tud alakulni egy kommunikáció. Élénkül az adatbányászat (főleg az Interneten) (Pl.: Mpeg 7 szabvány: rákeres egy film tetszőleges jelenetére és adataira) stb…

XML

AZ XML FOGALMA XML: EXtensible Markup Language (kiterjeszthető leíró nyelv) a W3C (World Wide Web Consortium – http://www.w3c.hu/ ) által ajánlott általános célú leíró nyelv speciális célú leíró nyelvek létrehozására. Egy XML dokumentum elemekből áll – szókincs az elemek egymáshoz való kapcsolata és tartalma szabályokkal rögzíthető – nyelvtan Szintaxis: – az XML dokumentumok (vagyis az elemek) jelölésére – a szabályok leírására (DTD–Documentum Type Definition). bárki saját nyelvet (dokumentum-típust) készíthet.

AZ XML FOGALMA Az XML tehát: bővíthető (eXtensible), mert saját elemeket lehet deklarálni; jelölő (Markup), mert az elemek – egy megadott módon – jelöléssel különböztethetőek meg egymástól; nyelv (Language), mert rögzíthető a szókincs és a szabályrendszer De ugyanakkor rugalmas: Tetszőleges elemkészlet, tetszőleges nyelvtan alapján saját jelölőnyelv készíthető.

AZ XML FOGALMA Az XML : (általában) hierarchikus-felépítésű, platform-független, (ember és gép számára) könnyen értelmezhető, egyszerűen verifikálható (ellenőrizhető) adatleíró nyelv.  

AZ XML FOGALMA Az XML (hierarchikus) struktúrája:

AZ XML FOGALMA Az XML (hierarchikus) struktúrája: A struktúra legfelső szintje két részből áll: – Fejrész (XML deklaráció) – pl.: <?xml version="1.0" encoding="UTF-8"?> – Dokumentum-elem (gyökér) – pl.: <uzenet> az üzenet törzse </uzenet>

JAVA – XML Miért fontos az XML használata? Újabb absztrakciós szint: nem kell mindig újraírni a hasonló feladatokat, ha egy jól definiált XML struktúra meg tudja adni a szereplő objektumokat, és ezt az XML-t dolgozza fel egy Java program. Segítségével pl. konfigurációs fájlokat is készíthetünk, és sok egyéb alkalmazási lehetősége van.

JAVA – XML XML létrehozása – pl.: public class FibonacciXML { public static void main(String[] args) { int egyik = 1; int masik = 1; int uj; System.out.println("<?xml version=\"1.0\"?>"); System.out.println("<Fibonacci_szamok>"); for (int i = 0; i < 10; i++) { System.out.print(" <fibonacci>"); System.out.print(egyik); System.out.println("</fibonacci>"); uj = egyik + masik; egyik = masik; masik = uj; } System.out.println("</Fibonacci_szamok>"); } }

JAVA – XML Eredmény:

JAVA – XML XML használata: XML dokumentumot létrehozni könnyű, feldolgozni (olvasni) korántsem az. Szerencsére a Java-ban van XML elemző (XML parser) – ez fel tudja dolgozni az adott XML fájlt. Az XML parser – ellenőrzi a dokumentum (formai) helyességét és érvényességét – feldolgozza az XML tartalmát javax.xml; javax.xml. ... csomagok

JAVA – XML (ÍRÁS-OLVASÁS) Példa: XML fájlból olvassa be az adatokat, majd kiírja a módosított fájlt.

JAVA – XML (ÍRÁS-OLVASÁS)

JAVA – XML (ÍRÁS-OLVASÁS) Books.xml: <?xml version="1.0" encoding="UTF-8"?> <Books> <Book Author="Colin Moock" ISBN="978 963 9637 47 4" Title="ActionScript 3.0 a gyakorlatban"/> <Book Author="Joshua Block" ISBN="978 963 9637 50 4" Title="Hatékony Java"/> <Book Author="Stephen Hawking" ISBN="945 356 22 5" Title=" Az idő rövid története"/> <Book Author="Tamási Áron" ISBN="963 539 352 0" Title="Ábel a rengetegben"/> </Books>

JAVA – XML (ÍRÁS-OLVASÁS) Megoldás: Ld. witch progi3\eloadas\peldak\XMLTest További részletek: http://www.roseindia.net/xml/dom/ http://www.vogella.com/articles/JavaXML/article.html + google

MÁR EGY ÉVES CIKK, DE GYAKRAN KERÜL SZÓBA Akit érdekel: Biztonsági hibák a Java környezetben.  http://wiki.javaforum.hu/pages/viewpage.action?pageId=30277644