ΑΛΛΗΛΕΠΙ ΡΑΣΗ ΑΝΘΡΩΠΟΥ ΜΗΧΑΝΗΣ 9 o ΕΡΓΑΣΤΗΡΙO

Σχετικά έγγραφα
Εργαστήριο 9 - Άσκηση - Ανάλυση

Εργαστήριο 7 - Άσκηση - Ανάλυση

Εργαστήριο 8 - Άσκηση - Ανάλυση

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

10.1 Γενικά για τα streams

ΑΛΛΗΛΕΠΙ ΡΑΣΗ ΑΝΘΡΩΠΟΥ ΜΗΧΑΝΗΣ 6 o ΕΡΓΑΣΤΗΡΙO

ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ

Δημιουργία μιας εφαρμογής Java με το NetBeans

(Κεφάλαιο 2.7 και 12) Αρχεία στην C. (Διάλεξη 15)

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Python. 1η Ομάδα Ασκήσεων

1.Puzzle. ΕΠΙΜΕΛΕΙΑ: ΓΕΩΡΓΙΑ ΚΛΩΣΤΡΑΚΗ Σελίδα 1

SPSS Statistical Package for the Social Sciences

Ανάπτυξη εφαρμογής Input-Output

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

Υποσύστημα Πρακτικής Άσκησης Εγχειρίδιο χρήσης Φοιτητή

Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστηµάτων Βάσεων εδοµένων Εαρινό Εξάµηνο

ΕΙΣΑΓΩΓΗ ΔΕΔΟΜΕΝΩΝ ΑΠΟ EXCEL ΣΤΟ GRETL

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

Μετατροπή χαρακτήρων ASCII σε αριθμό (atoi) & διάβασμα, και αποθήκευση του περιεχομένου του στη μνήμη. (Διάλεξη. Πανεπιστήμιο Κύπρου

Με την είσοδο στο eδαπυ, ο χρήστης επιλέγει από αριστερά τις Ενέργειες.

VK - 04/11/2016- [1]

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ & ΧΡΗΣΗΣ ΟΛΟΚΛΗΡΩΜΕΝΟΥ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΑΝΑΠΤΥΞΗΣ BloodShed Dev-C++

Μεθόδων Επίλυσης Προβλημάτων

Αρχεία και Ρεύματα. Αρχεία

Αντικειμενοστρεφής Προγραμματισμός

Ask1, Ask2, Ask3. private void jbutton1actionperformed(java.awt.event.actionevent evt) { jlabel1.settext( "You pressed the 1st button" ); }

Εργαστήριο 2 - Άσκηση - Ανάλυση

Οντοκεντρικός Προγραμματισμός ΦΡΟΝΤΙΣΤΗΡΙΟ JAVA

Στοιχεία Προγραμματισμού Σε Γραφικό Περιβάλλον Φύλλο εργασίας 1 ο

SMPcache. Ένα εργαλείο για προσομοίωση-οπτικοποίηση κρυφής μνήμης (Cache)

Δομές Δεδομένων. Σημειώσεις από το εργαστήριο για τον χειρισμό του προγράμματος Eclipse. 5ο εξάμηνο. v1.0

ΣΧΕΔΙΑΣΜΟΣ ΙΣΤΟΣΕΛΙΔΑΣ ΜΕ ΤΗ ΧΡΗΣΗ ΠΡΟΤΥΠΟΥ ΙΣΤΟΣΕΛΙΔΑΣ (TEMPLATE) ΣΤΟ ΠΡΟΓΡΑΜΜΑ MICROSOFT OFFICE SHAREPOINT DESIGNER 2007

Το βιβλίο διευθύνσεων των Windows

Microsoft PowerPoint 2010 Πανεπιστήμιο Κύπρου

ΧΡΗΣΗ ΤΗΣ ΠΛΑΤΦΟΡΜΑΣ BLACKBOARD ΑΠΟ ΜΑΘΗΤΗ ΒΑΣΙΚΟΣ ΟΔΗΓΟΣ

Ο ΗΓΟΣ ΧΡΗΣΗΣ Kidspiration 2.1

Πως θα κατασκευάσω το πρώτο πρόγραμμα;

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΠΡΟΓΡΑΜΜΑΤΟΣ GPRS 1. ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ GOOGLE EARTH

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον (Εργαστήριο 2)

Πρόγραµµα 9.1 Πέρασµα δεδοµένων στην µνήµη

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

ΕΡΓΑΣΤΗΡΙΟ 6: Συναρτήσεις και Αναδρομή

Ας ξεκινήσουμε λοιπόν!

Πληροφορική & Τηλεπικοινωνίες. K18 - Υλοποίηση Συστημάτων Βάσεων Δεδομένων Εαρινό Εξάμηνο

ΓΡΑΦΙΚΕΣ ΔΙΕΠΑΦΕΣ ΧΡΗΣΤΗ- SWING (1)

Υποσύστημα Πρακτικής Άσκησης Εγχειρίδιο χρήσης Φοιτητή

Εργαστήριο 1-1 η Άσκηση - Ανάλυση

Αντικειμενοστρεφής Προγραμματισμός

Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #4 ο : Αποσφαλμάτωση (debugging), μετατροπές

ΟΔΗΓΟΣ ΓΙΑ ΕΚΔΟΣΗ ΨΗΦΙΑΚΟΥ ΠΙΣΤΟΠΟΙΗΤΙΚΟΥ

Οδηγίες χρήσης πλατφόρμας τηλεκατάρτισης

(Κεφάλαιο 2.7 και 12) Αρχεία στην C. ( ιάλεξη 13) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

Υπολογισμός και αποστολή Αναλυτικής Περιοδικής Δήλωσης

Δημιουργία ανάγλυφου στο QGIS

Εαρινό. Ύλη εργαστηρίου, Ασκήσεις Java

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010

Ανάπτυξη εφαρμογής Input-Output

Εγχειρίδιο χρήσης Intalio Designer Εγχειρίδιο χρήσης Intalio Designer

Εισαγωγή στον Αντικειμενοστρεφή Προγραμματισμό Διάλεξη #15

Οδηγίες για την εγκατάσταση του πακέτου Cygwin

Μάθημα 2 [10/11/2015]

Field Service Management ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ

ΑΣΚΗΣΗ 1: TO ΠΕΡΙΒΑΛΛΟΝ ΕΡΓΑΣΙΑΣ DEV-C++

ΕΞΑΙΡΕΣΕΙΣ. Εξαιρέσεις προκαλούνται. από το σύστηµα. από το πρόγραµµα

Γενικά (για τις γραπτές εξετάσεις)

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #4 ο : Αποσφαλμάτωση (debugging), μετατροπές

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Μαθήματα από τα εργαστήρια

Οδηγίες για προσθήκη Web Frames Tools to the Quick Access Bar σε μεταγενέστερη έκδοση του Word

Εγχειρίδιο διαχείρισης χρηστών και λιστών διανομής για τον Υπεύθυνο Φορέα του Δικτύου "Σύζευξις" -1-

Περιγραφή της εργασίας

Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστημάτων Βάσεων Δεδομένων Εαρινό Εξάμηνο

ΣΧΕΔΙΑΣΜΟΣ ΙΣΤΟΣΕΛΙΔΑΣ ΜΕ ΤΗ ΧΡΗΣΗ "ΠΡΟΤΥΠΟΥ ΙΣΤΟΣΕΛΙΔΑΣ" (TEMPLATE) ΣΤΟ ΠΡΟΓΡΑΜΜΑ MICROSOFT OFFICE SHAREPOINT DESIGNER 2007

Mendeley - εισαγωγή βιβλιογραφικών παραπομπών στον κειμενογράφο

Εξοικείωση με το πρόγραμμα DEV C++ Επικοινωνία Χρήστη - Υπολογιστή

Οδηγίες EQL Desktop (rev ) ΣΥΝ ΕΣΗ S-710 ΜΕ ΚΑΛΩ ΙΟ USB ΠΡΟΚΑΤΑΡΚΤΙΚΕΣ ΕΡΓΑΣΙΕΣ

Διάλεξη 18η: Διαχείρηση Αρχείων

ΑΛΛΗΛΕΠΙ ΡΑΣΗ ΑΝΘΡΩΠΟΥ ΜΗΧΑΝΗΣ 2 o ΕΡΓΑΣΤΗΡΙO

Παρουσίαση Libreoffice. Βασίλειος Καραβασίλης Μονάδα Αριστείας ΕΛΛΑΚ ΕΤΕΠΗ 27/04/2015

WORDPRESS. Εικόνα 1. Πατώντας στη «Σύνδεση» γράψτε το Username (όνομα χρήστη) και το Password (συνθηματικό) (εικόνα 2) που σας έδωσε ο διαχειριστής

ΕΡΓΑΣΤΗΡΙΟ FRONT PAGE 3

Ξεκινώντας με το MIT Αρρ Inventor. 1 η Εργασία

Inspiration 7 ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ ΜΕ ΠΑΡΑΔΕΙΓΜΑ

Εισαγωγή στο περιβάλλον Code::Blocks

Εγχειρίδιο Χρήσης Ψηφιακής Υπηρεσίας

I (JAVA) Ονοματεπώνυμο: Α. Μ.: Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην.

ΔΗ Μ Ι Ο ΥΡ Γ Ι Α W I K I με τ η χρήση τ η ς υπ ηρεσίας h t t p : / id ot.com /

'Ασκηση 1: Στατικός Κατακερματισμός. Εισαγωγή. Ρουτίνες υλοποίησης κατακερματισμού. (Ημερομηνία Παράδοσης: Παρασκευή, 16/5/2008, 5μμ) HT_Init()

ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΑΝΑΠΤΥΞΗ ΣΥΣΤΗΜΑΤΟΣ ΔΙΑΧΕΙΡΙΣΗΣ ΜΑΘΗΜΑΤΩΝ ΚΑΙ ΕΠΕΞΕΡΓΑΣΙΑΣ ΣΤΟΙΧΕΙΩΝ ΚΑΙ ΕΠΙΔΟΣΕΩΝ ΦΟΙΤΗΤΩΝ. Σταθάκης Απόστολος Α.Ε.Μ.

ΜΑΘΗΜΑ Άνοιγμα Της Εφαρμογής Επεξεργασίας Κειμένου. 2. Κύρια Οθόνη Της Εφαρμογής Κειμένου ΣΤΟΧΟΙ:

Χειρισµός Σφαλµάτων. Γρηγόρης Τσουµάκας. Τµήµα Πληροφορικής, Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης. Έκδοση:

ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ GRS-1

To περιβάλλον Ανάπτυξης εφαρμογών της Visual Basic 2008 Express Edition

Ο χρήστης συμπληρώνει όνομα χρήστη και κωδικό και επιλέγει Είσοδος. Εάν δεν έχει κάνει εγγραφή στο σύστημα θα πρέπει να επιλέξει πρώτα Εγγραφή.

Εγκατάσταση αρχείων βιβλιοθήκης VHOPE και VHOPE

ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΤΗ. Ηλεκτρονική Υποβολή Α.Π.Δ.

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ LIVETRIP TRAVELLER

Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστημάτων Βάσεων Δεδομένων Εαρινό Εξάμηνο

4 η Εργαστηριακή Άσκηση

Transcript:

ΑΛΛΗΛΕΠΙ ΡΑΣΗ ΑΝΘΡΩΠΟΥ ΜΗΧΑΝΗΣ 9 o ΕΡΓΑΣΤΗΡΙO H φόρµα µε τίτλο «Simple Editor» θα έχει δυνατότητα ανάγνωσης και αποθήκευσης ενός απλού text αρχείου χρησιµοποιώντας Μενού και FileChooser αντί διαλόγων. jτextarea (Προτείνεται να κάνετε copy το project του Eργ 8 για να το αλλάξετε σε Eργ9) Λειτουργικά θα αντικαταστήσετε τους 2 πρώτους διαλόγους του Eργ 8 (κρατήστε τον 3 ο ), με 2 FileChooser, και θα ισχύουν πάλι οι λειτουργίες Open/Save και SaveAs. Mην βιαστείτε να σβύσετε τους 2 διαλόγους. Το καλύτερο θα ήταν να εχουμε τις εντολές ανάγνωσης και εγγραφής αρχείου, μέσα σε μεθόδους και να τις καλούμε στα σημεία που απαιτείται. Η διαφοροποίηση των 3 εργαστηρίων (7 ο, 8 ο και 9 ο ) αφορά και τον τρόπο με το οποίο επιλέγεται το αρχείο π.χ. το όνομα του αρχείου (fname) δίνεται άμεσα μέσα σε TextField, ή σε TextField ενός διαλόγου ή επιλέγεται μέσω FileChooser. fname =jfilechooser1.getselectedfile().getabsolutepath(); (Προτείνεται να υλοποιηθούν δυο μέθοδοι openfile και savefile ) Aπό τον 1 ο διάλογο: Αδειάσετε την μέθοδο του κουμπιού Οpen του διαλόγου private void jbutton1actionperformed(java.awt.event.actionevent evt) { και το περιεχόμενό της να το μεταφέρετε σε μέθοδο με όνομα openfile private void openfile() { try { catch (IOException e) { // open FILE... με FILEREADER Από τον 2 ο διάλογο: Αδειάσετε την μέθοδο του κουμπιού Save του διαλόγου private void jbutton3actionperformed(java.awt.event.actionevent evt) { και το περιεχόμενό της μεταφέρετέ το σε μέθοδο με όνομα savefile private void savefile() { /*save FILE... με FILEWRITER */ Κατόπιν σβύστε τους 2 διαλόγους και ότι εντολή τους αφορά. Tα υπόλοιπα παραμένουν όπως ήταν στο Eργ 8. Επι πλέον θα προστεθούν διάφορα μηνύματα είτε λάθους είτε πληροφοριακά (μέσω OptionPane). VK -09/12/2016 -[1]

OptionPane Παράθυρα Που θα τα χρησιμοποιήσετε: η αποθήκευση των αλλαγών θα γίνεται αφού ερωτηθεί ο χρήστης αν θέλει να αποθηκεύσει ή όχι. Η ερώτηση θα γίνει μέσω διαλόγου joptionpane (βιβλιοθήκη import javax.swing.joptionpane; ). Eτσι στα SAVE του μενού, πριν γίνει η διαδικασία εγγραφής, θα ανοίγει OptionPane και θα ελέγχονται τα αποτελέσματά του π.χ. int result; result = joptionpane1.showconfirmdialog(this, "The file exists,overwrite?", "Existing file", JOptionPane.YES_NO_CANCEL_OPTION); Το OptionPane ανοίγει με showconfirmdialog και επιστρέφει μια ακέραια τιμή result H κλάση JOptionPane δημιουργεί έτοιμα παράθυρα διαλόγου διαφόρων ειδών πχ: Ενημερωτικά: joptionpane1.showμessagedialog Eπιβεβαιωτικά: joptionpane1.showconfirmdialog Eισαγωγής: joptionpane1.showιnputdialog Επιλογής: joptionpane1.showoptiondialog ΕΝΗΜΕΡΩΤΙΚΟ ΕΠΙΒΕΒΑΙΩΤΙΚΟ Μπορείτε να Προσθέστε joptionpane και µέσω των ΟtherComponents -1: CLOSE_OPTION, DEFAULT_OPTION 0 : OK_OPTION, YES_OPTION, YES_NO_OPTION 1 : NO_OPTION, YES_NO_CANCEL_OPTION 2 : CANCEL_OPTION, OK_ CANCEL_OPTION JOptionPane.showMessageDialog (null, "Το μήνυμά μου!", "Tίτλος μηνύματος", JOptionPane.ERROR_MESSAGE); joptionpane1.showconfirmdialog (this, "The file exists,overwrite?", "Existing file", JOptionPane.YES_NO_CANCEL_OPTION); EIΣΑΓΩΓΗΣ ΕΠΙΛΟΓΗΣ JOptionPane.showInputDialog (null, "Δώσε όνομα","tίτλος μηνύματος", JOptionPane.OK_CANCEL_OPTION); String[] epiloges = { "Καθηγητής","Μαθητής","Επισκέπτης"; VK -09/12/2016 -[2]

JOptionPane.showOptionDialog (null, "Διάλεξε", "Tίτλος μηνύματος", JOptionPane.DEFAULT_OPTION, JOptionPane.QUESTION_MESSAGE, null, epiloges, "Μαθητής"); Eδώ θα χρησιμοποιήσουμε μόνο τα 2 πρώτα παράθυρα (Message και Confirm). 1. Λειτουργία ΟPEN/read του μενού (για text αρχείο ) Προσθέστε τον 1 ο FileChooser µέσω των ΟtherComponents FileReader fr=new FileReader(fName); jtextarea1.read(fr,null); fr.close(); ΥΠΕΝΘΥΜΙΣΗ Ανάγνωσης (μέσα σε try/catch μπλοκ) openfile //ονομα αρχείου fname Προσθέστε τον 1 ο FileChooser μέσω των ΟtherComponents/Αdd From Palette/Swing Windows Με την επιλογή ΟPEN του μενού θα ανοίγει o FileChooser με την μέθοδο jfilechooser1.showopendialog και αφού επιλεχθεί το επιθυμητό (txt) αρχείο, με το κουμπί του Οpen το κείμενο του αρχείου θα εμφανίζεται μέσα στην jtextarea1 (και ο FileChooser κλείνει - αυτόματα). Οταν πατιέται το κουμπί του Cancel απλά κλείνει (θα μπουν και κάποια μηνυματάκια μετά). Ο FileChooser (για open) ανοίγει με showopendialog και επιστρέφει μια ακέραια τιμή 1 Αν όλα ΟΚ (δηλ. retok=0), θα αρχικοποιηθεί o FileReader, με όνομα αρχείου (fname) int retok; //η τιμή επιστροφής από το άνοιγμα του FileChooser private void jmenuitem1actionperformed(java.awt.event.actionevent evt) { retok =jfilechooser1.showopendialog(this); if (retok == JFileChooser.APPROVE_OPTION) // retok=0 { fname =jfilechooser1.getselectedfile().getabsolutepath(); settitle(fname) ; openfile() ; -1 : ERROR_OPTION 0 : APPROVE_OPTION 1 : CANCEL_OPTION Για να δημιουργήστε φίλτρο στον διάλογο, για τα επιλεγόμενα αρχεία π.χ. για αρχεία κειμένου : FileNameExtensionFilter filter =new FileNameExtensionFilter("TEXT Files", "txt"); jfilechooser1.setfilefilter(filter); (απαιτεί την βιβλιοθήκη import javax.swing.filechooser.filenameextensionfilter; Τις δυο αυτές εντολές, μπορείτε να τις βάλετε πχ. στο δομητή της κλάσης μετά το initcomponents()). 1 https://docs.oracle.com/javase/7/docs/api/constant-values.html#javax.swing //οι σταθερές javax.swing.jfilechooser VK -09/12/2016 -[3]

2. Λειτουργίες SAVE και SAVE as /write του μενού Την μέθοδο savefile, θα την καλέσετε και στις 2 λειτουργίες (save και saveas) Το όνομα του αρχείου που θα σωθεί, θα βρίσκεται στην μεταβλητή fname. Λειτουργία SAVE του μενού int result; private void jmenuitem3actionperformed(java.awt.event.actionevent evt) { result = joptionpane1.showconfirmdialog(this, "Θέλεις να κρατήσεις τις αλλαγές?", "ΑΠΟΘΗΚΕΥΣΗ", JOptionPane.YES_NO_CANCEL_OPTION); if (result== JOptionPane.YES_OPTION) savefile(); savefile Λειτουργία SAVEas του μενού Θα χρησιμοποιηθεί ένας ακόμη FileChooser ώστε να επιλεχθεί η τοποθεσία που θα σωθεί το αρχείο και να δοθεί το νέο όνομα. Ο 2 ος FileChooser θα ανοίγει με showsavedialog, και θα επιστρέφει την ακέραια τιμή retok. Υπενθύμιση Αποθήκευσης (μέσα σε try/catch μπλοκ) FileWriter fw=new FileWriter(fName); jtextarea1.write(fw); fw.close(); Προσθέστε τον 2 ο FileChooser µέσω των ΟtherComponents Εδώ θα μπει το νέο όνομα. Κουμπιά: Save και το Cancel private void jmenuitem4actionperformed(java.awt.event.actionevent evt) { retok = jfilechooser2.showsavedialog(this); Αν όλα ΟΚ, θα πρεπει να αρχικοποιηθεί ο FileWriter με το όνομα που επιλέγεται στο 2 ο FileChooser Έτσι όταν πατιέται το κουμπί του Save, το κείμενο που υπάρχει μέσα στην jtextarea1 θα σώζεται στο νέο επιλεγμένο όνομα και θα κλείνει ο διάλογος και όταν πατιέται το κουμπί Cancel απλά κλείνει ο διάλογος (αυτόματα). Οι λειτουργίες του jfilechooser2 μπορούν να ελεγχούν και με ActionPerformed: VK -09/12/2016 -[4]

private void jfilechooser2actionperformed(java.awt.event.actionevent evt) { if (retok ==JFileChooser.APPROVE_OPTION) { fname = jfilechooser2.getselectedfile().getabsolutepath() ; //εδώ.., θα πρέπει να ελεγχτεί μήπως ΥΠΑΡΧΕΙ ΗΔΗ ΤΟ ΑΡΧΕΙΟ //και αν το αρχείο υπάρχει, να ερωτηθεί ο χρήστης αν θέλει να το επικαλύψει savefile(); Στο SaveΑs του μενού, πρέπει να ελεγχτεί μήπως υπάρχει ήδη αρχείο με το όνομα που δόθηκε, και αν υπάρχει να εμφανιστεί joptionpane διάλογος ώστε να ερωτηθεί ο χρήστης αν επιθυμεί αντικατάστασή του. Για να ελέγξετε αν υπάρχει ήδη το όνομα του αρχείου που δώσατε, θα χρησιμοποιήσετε ένα αντικείμενο filename της τάξης File File fo; //μεταβλητή, απαιτεί βιβλιοθήκη: import java.io.file; fo= jfilechooser2.getselectedfile() //το αρχείο, ως αντικείμενο της κλάσης File fname=fo. getabsolutepath(); if ( fo.exists() ) Αφού ρωτήσεις με joptionpane αν επιθυμείτaι αντικατάσταση και είναι ΟΚ, σώσε. Αν δεν υπάρχει πάλι θα σώσεις (χωρίς όμως να ρωτήσεις ). Μηνύματα για πληροφορίες και λάθη, με δημιουργία μεθόδων Θα δημιουργήστε 2 μεθόδους: errormessage και infomessage με παράμετρο το κείμενο, ώστε να τις καλείτε σε διάφορα σημεία του κώδικα με διαφορετικό μήνυμα (βλέπε πιο κάτω.) Μήνυμα Τίτλος private void errormessage(string msg) { JOptionPane.showMessageDialog(null, msg,"προσοχή Λάθος",JOptionPane.ERROR_MESSAGE); private void infomessage(string msg) { JOptionPane.showMessageDialog(null, msg,"ενημέρωση",joptionpane.information_message); Εμφανίστε Ενημερωτικά Μηνύματα και Μηνύματα Λάθους όπου αυτό απαιτείται χρησιμοποιώντας το δικό σας κείμενο π.χ. Όταν πατάω το Οpen του 1 ου FileChooser και δίνω όνομα αρχείου που δεν υπάρχει θα καλείται η errormessage("δεν υπάρχει αυτό το αρχείο ") Όταν πατάω το Οpen του 1 ου FileChooser χωρίς να επιλέγω όνομα αρχείου καλείται η errormessage("δεν υπάρχει αυτό το αρχείο ") Όταν εμφανίζεται το αρχείο στην TextArea να καλείται η infomessage("το αρχείο φορτώθηκε σωστά ") Όταν πατάω το Cancel του 1 ου FileChooser να καλείται η infomessage("πάτησες Cancel ") Όταν πατάω το Cancel του 2 ου FileChooser και δεν δίνω όνομα αρχείου θα καλείται η infomessage("πάτησες Cancel ") κτλ. VK -09/12/2016 -[5]