[Playlisten] [Impressum und Datenschutzerklärung]

01.07_08 Datenströme, Exceptions


CC-BY-NC-SA 3.0

Tempo:

Anklickbares Transkript:

dann sollst um Dateien und Datenströmegehenman kannmit der Klassenbibliothekhier ziemlicheinfachDateien laden und speichern ?? ich bau mal eine dumme Dateihabenirgend eine Textdateiinden grandiosen Narrentest natürlichirgendwasrein schreibesowasder FehleramMerkmal sofort wo das stehtdamit ich ?? zugreifen kannda steht essound nun geht das wenn man will ziemlich billigich kann sagen SystemPunkt Aihoinput/outputFileDateigibt es direkt eine Funktionsfunktionnamens Vit Karl-Heinzder seitlich einfach wo die Datei stehtsoll ich mir eben gemerktZwischenablageTestPunkt TXTso wird zwar nicht ganz funktionieren sie Sehende gibt's noch unterschlängelt Lungensich erinnern an Cgab's er den Trick in C wenn Sie schreibenBackslashN heißt das neue ZeileBackslash TX Tabulatorder Backslash hatauch in Ziel Sharp diese besondere Bedeutung dass danach irgend ein Sonderzeichen ein Steuerzeichenkommt hier das Wetter sogar das wiederlesen als TabulatorISTeraber Backslash groß D kennt er nicht Punkt man kann diese Sonderrolle desBackslash abschalten in dem man der einfachen etwa setztfindet auf der TastaturderKnesset davordann das Ding in sie schaut einfachandas Wetter vorschreiben ignoriert der Compilerdie besondere Bedeutung von demBackslashnimmt den Backslash wörtlich?? Möglichkeit wäre diesen Backslash unixmäßig zu schreiben dass sie einfach normal Schrägstrich schreibenkannsodiese Funktionsind die was sie tutnimmt den Fahrtdas es was ich eben zusammengebastelthabe als Zeichenketteund gibt eine wavegibt eine wave von Springs zurück ganz bequem ganz links davon sich mit der Maus dahin zeigen ganz links steht Stringdabei dieses Ding gibt eineein bei Tanzzeichenkettenzurücksonicht da jetzt hingeheundden nächsten Schritt ausführehabe ich in Fhabe ich in FEintrag für Eintrag das was die Zeilen meiner Datei waren in einer einzelnen Zeileanalog kann man Dateien schreibendie gebenden Ding zum Beispiel einfachen übrigens Pfingsten wird jedereine Zeile Textdateidas ist eine billige Artmit Dateien umzugehendie dürftein fünfundsiebzig Prozent der Fälle auch reichendannandererseits gibt es ?? mich jetzt sich jetzt gerade wollen zum Beispiel an einer Stelle die Daten der hauseigenen Solaranlage hier auswertendas sind eherlocker mehrere Gigabytesin den Jahren aufgelaufen?? Datei haben die mehrere Gigabytes groß ist das vielleicht keine gute Idee wenn sie komplett einlesenbin ich nicht mehr viel Platz beziehungsweiseÖlgeht gar nicht weil viel zu großje größer die Dateien werdendesto eher wird man sich überlegen nicht diesen Befehl zu benutzensondern einzeln durchzugehenund darum soll's dann noch eine Extraveranstaltunggehenanwie gehe ich mit großen Dateien umder Begriff StreamDatenströmenetterweise geht es dann nicht nur mit Dateiensondern das kann man an diversen anderen Stellen zum Beispiel mit Daten aus dem Internetgenauso tunmanverarbeitetdie nicht auf einen Schlagsondern man geht dadurch wie mit einem Cursorvor das ist meine Dateizehn Gigabyte Messdatenam Stückdannlade ich die nicht auf einen Schlag in den Speichersondernich gehe dadurchmit einer Art Cursorund an dieser Stelle kann ichschreibenoder lesenRegister spezielle Funktionenum eine ganze Zahl zu schreiben zu lesen eine double-Zahl zu schreiben zunächst eine Zeichenketteanje nach Art des Jamesje nach Art des Teams geht der Cursor nur in eine Richtungoder vielleichtausnahmsweiseauch in beide Richtungen wenn das Datei ist die fertig auf der Festplatte liegtdann können Siemit dem Cursor natürlicher rückwärts gehen und springen ich muss ja nur eine andere Stelle in der Datei in die Details dar wenn das hier etwas ist was gerade aus dem Internet heruntergeladenwirdbezweifle bisschen spannender mit dem Springen insbesondere mit dem Springen nach vorne war mit der Teil der hinten fehltdennoch gleich runtergeladenistwenn dieser Stream etwas darstelltwas von der Tastatur eingegeben wirdumso mehrdenke ich gar nicht in der Zukunft dich denn nur das was bisher angekommen ist von der TastaturKommawas der Begriff Datenstromstreamwird ein allgemeiner verwendet?? den selben Klassen handhabt man ganz vieleverschiedene Fälle aber insbesonderegroße Dateienund was dann am Rande noch dazu gehört wenn sie eigene Klassen schreibenirgendein Projektwollte ja vielleicht auch den Inhaltvon den Klassendas als Inhaltsobjekte soll sagen und den Inhalt der Objekte steigt auf Festplatte sichern und wiederladen ?? nicht auf die Festplatte sichern sondern auchins Internet schicken oder aus dem Internet zurück und dafür gibt's eigene Funktion serieller Säcke nennt sich das dann man schreibt einfach vor die Klasseund schreibt vor die Klasse einfach minimal was davorzogen wirsowas in dieser Artfür sich ausführlich vor sie schreiben einfach das der forcierteGeleise willsie realisierbarund dann können Sieder Klassen wirklich mit einer Zeilezwei Zeilen sagenlade diese Klasseein Objekt dieser Klasse von der Festplatte oder sonst wo heroder umgekehrt schreibe ein Objekt dieser Klassevon der ?? auf die Festplatte oder lag es irgendwo her das gehtziemlich schlankPunkt eine seltenedas Arbeiten mit Dateien undDatenströmensobald man beiDateien und Datenströmenistmuss man sichdas sobaldwenn man da istmuss man sich dringend mit Fehlerbehandlungauseinandersetzengibt ja diverse Sorten an Fehlerndas habe ich letztesSemester schon erzählt als es um die es sonst gingam linkenrichtigen Programmierfehlerdrin habendas ?? Programm ein ein logisches Problem bestehtsie können aber auch Fehler habenin dem einfach bei der Ausführungetwas passiert was eigentlich nicht passieren solldas hier zum Beispieljemand versucht den TextLatex zu laden der nicht existiertdas müsste ich sonst klassischerweisemit irgendwelchen Fehlercodes abfangen ich müsste erst mal gucken ist die Datei dawarenoder ich lade das und gibt mir das Ding hier versteckt ein Fehler ?? Versuche zu laden das den Gemeinfehlercodezurückhabender ganze Code den ich schreibe ist durchmischt mit solchen Sachen ist denn jetzt die ?? ist der Fehler gleich nullist etwas passiert was ist passiert muss ich das behandeln das nervt total die Fehler so zu behandeln ??stattdessenlässt man es einfach sound verwendet etwas was sich Exabstinenzdas dass es ganz üblich für alle modernen Systeme ab C plus plus aufwärtsamFehler nicht mehr alle Fehler dieser Artkeine echten ProgrammierfehlersondernLaufzeitfehler dieser Art nicht durchFehlercodes zu behandeln sondern durch Exceptionszu behandeln AusnahmesituationKomma sie passiert also diese Datei existiert nichtdie Funktion wie Karl-Heinz muss auf die Nase fallenokaygesehen ?? dies auf diean anderer Stelle auf die Nase gefallen oderhat doch alles richtig ?? das komische Stelle auf die Nase gefallener in dieser Funktionwenn Windows tatsächlich auf die Nase gefallen das es recht ungeschickt dass es an der Stelle vorführen soll Komma an einer Stelle vor für groß etwas klarer ist nicht geradeFaktor ich baue das mal auf das Klickereignisund nichtmit Bau den man in das Klickereignisund nicht in die Funktion ?? ganz zu Beginn aufgerufen wirddann ist die Nachrichtetwas klarer erhaltenzualso Klick auf den Buttonaus mal da ein erst mal welche Staatenunscharf startenaber wenn ich auf den Button klickemuss ich ??okaydas sie besser auseinemsowas klar an der einen Stelle sowas unklar alles mühsam beginnen zu jener Zeit noch mal kleines N anderer Stelle passiert so feiner VDZ je das ist so eine besagte exotischendem offensichtlich Komma da die Datei sowieso Blatttext konnte nicht gefunden werdenhabendass sie das mal so außer dass Programme zwangsweise abstürzen müsste Datei nicht dablödan der Weise Komma dass dann fangen das heißt tatsächlich dann fangen man kann sagen okay probier das mal aus zweiwir folgendes mal aus kann schief gehen Komma probier es mal ausund wenn du fertig bistoderwenn sie nicht ?? das Männchen fertig bist wenn sich fusioniert hatfangejetzt alle möglichen Exceptions die auftreten könnenund behandle die dannals was hier dann in den dreiSchweiß stehtist ganz normaler Programmcodeohne Fehlerbehandlungich geh einfach davon aus es passiert nichts Schlimmesdenn wenn was Schlimmes passiertin den zwanzig dreißig zeiligen Entscheid dazwischen stehen könnenwenn das Schlimmes passiert wieder sofort zu dem catchmit dieser Käppchendie kann ich dannbehandeln wie das so schön hastig kam ich dann später um die Fehlerbehandlungkümmernmöchte gucken was da drin steht ?? inhaltsgleichPunktMessagein dieser Formirgendwas verbrenntihrschonokay gibt's schon irgendwo aber etwas Infoahaokay gibt's da schon Uppsalasind der GC schonschlechtmit dem ?? Xals kreativso besseralso er versucht das hier auszuführendas sagt das mit dem Schweinda kann extrem viel dazwischen stehen er versucht es auszuführen bei der ersten Ex Epson bei der ersten Ausnahme die Auftrittrichterdas Abwasser ?? man da drin steht und geht hier zu den catchwas die Zäpfchen fängtwieder schön hastund dann kann ich mich drum kümmerndie Trümmer zusammen zu sortieren wie vor aufgetretensind aber in diesem Programmcode vorne muss mich nicht mit Fehlerbehandlung beschäftigen sie dann nicht immer zwischendurchist ?? holen den aktuellen Fehler ist ungleich null?? für dieses und jeneswas einmal vor ich setz hier mal denHeimweg Punktbessernochbesser noch ich gebe das in ein Nebel ausich baue noch ein Nebel reinKomma lebe rein und setze einfach den Inhalt dieses LabelsContentauf diese Messagedas heißt wenn ich jetzt drauf klickewird WildriedalleinVersagen war die Datei nicht da ist aber das Programm stürzt nicht ab alles was passiertist das in diesemLabel stehen wird ups folgendes ist passiertohne Absturzwas lesen kannPunkt so hattenda stetsohne Absturzdas ist die übliche Ader mit Exceptions umzugehen dassind sie beiwarinsbesondere bei Dateien der kann zu viel schief gehen die Datei ist nicht da die Datei schreibgeschützt?? es ist kein Platz mehr da sein wird elend viel bei Internetverbindunggeht irgendwie schief tauchen ständigselbstan sie Hans gestern und vorgestern ?? Praktikum daran gesehen wenn man eineZeichenkette in eine Zahl wandeltgleiches Problem sobald man es auffangen Punkt unseineVorlesung an wieder digitalisiertdas übelste Kontext Nummer neun gewesen Komma dass ?? gemerktPunktich stell einfach die Dateiins Netzhatsich neundassind in ExceptionsA sollte abschließend noch sagen wenn ich dich selbst nicht fange passiert das was sieteilweise schon gesehen haben Programmabsturzoder das habe ich ?? mir auch vorgeführt?? Rezepte nicht fangenin das Programm aufeineharte Weise