java:class_file

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
java:class_file [2016/03/18 21:04]
gthanos [Παράδειγμα 2]
java:class_file [2017/02/17 07:58] (current)
gthanos
Line 1: Line 1:
 ====== Η κλάση File ====== ====== Η κλάση File ======
  
-Η κλάση [[https://​docs.oracle.com/​javase/​7/​docs/​api/​java/​io/​File.html|java.io.File]] απεικονίζει ένα αρχείο ή directory ​από το λειτουργικό σας σύστημα. Μέσω της κλάσης File μπορείτε να έχετε πρόσβαση στα αρχεία του συστήματος σας, να εξετάσετε κατά πόσο ένα αρχείο είναι ​directory ​ή απλό αρχείο,​ να δείτε τα περιεχόμενα ενός ​directory, να εξετάσετε εάν ένα αρχείο είναι εκτελέσιμο ή όχι και άλλα. ​+Η κλάση [[https://​docs.oracle.com/​javase/​7/​docs/​api/​java/​io/​File.html|java.io.File]] απεικονίζει ένα αρχείο ή κατάλογος ​από το λειτουργικό σας σύστημα. Μέσω της κλάσης File μπορείτε να έχετε πρόσβαση στα αρχεία του συστήματος σας, να εξετάσετε κατά πόσο ένα αρχείο είναι ​κατάλογος ​ή απλό αρχείο,​ να δείτε τα περιεχόμενα ενός ​καταλόγου, να εξετάσετε εάν ένα αρχείο είναι εκτελέσιμο ή όχι και άλλα. ​
  
 Προκειμένου να φτιάξετε ένα αντικείμενο της κλάσης File αρκεί να χρησιμοποιήσετε έναν από τους κατασκευαστές της κλάσης File. Ο πιο απλός κατασκευαστής της κλάσης είναι ο παρακάτω,​ ο οποίος λαμβάνει ως όρισμα ένα String που περιέχει το path ενός αρχείο και δημιουργεί το αντικείμενο της κλάσης File. Προκειμένου να φτιάξετε ένα αντικείμενο της κλάσης File αρκεί να χρησιμοποιήσετε έναν από τους κατασκευαστές της κλάσης File. Ο πιο απλός κατασκευαστής της κλάσης είναι ο παρακάτω,​ ο οποίος λαμβάνει ως όρισμα ένα String που περιέχει το path ενός αρχείο και δημιουργεί το αντικείμενο της κλάσης File.
Line 8: Line 8:
 </​code>​ </​code>​
  
-Για παράδειγμα,​ αν θέλετε να δημιουργήσετε ένα αντικείμενο File για το τρέχον ​Directory ​αρκεί να γράψετε+Για παράδειγμα,​ αν θέλετε να δημιουργήσετε ένα αντικείμενο File για τον τρέχον ​κατάλογο ​αρκεί να γράψετε
 <code java> <code java>
 File currentDir = new File("​."​);​ File currentDir = new File("​."​);​
Line 25: Line 25:
   * ''​public boolean canRead()''​ : Ελέγχει εάν μπορούμε να ανοίξουμε το αρχείο για διάβασμα.   * ''​public boolean canRead()''​ : Ελέγχει εάν μπορούμε να ανοίξουμε το αρχείο για διάβασμα.
   * ''​public boolean canWrite()''​ : Ελέγχει εάν μπορούμε να ανοίξουμε το αρχείο για γράψιμο.   * ''​public boolean canWrite()''​ : Ελέγχει εάν μπορούμε να ανοίξουμε το αρχείο για γράψιμο.
 +  * ''​public boolean createNewFile()''​ : Δημιουργεί ένα νέο κενό αρχείο στο filesystem, εφόσον το αντικείμενο File δεν αντιστοιχεί σε υπαρκτό αρχείο.
   * ''​public boolean delete()''​ : Επιχειρεί να διαγράψει το αρχείο ή κατάλογο. Επιστρέφει **true** εάν επέτυχε η διαγραφή,​ διαφορετικά **false**.   * ''​public boolean delete()''​ : Επιχειρεί να διαγράψει το αρχείο ή κατάλογο. Επιστρέφει **true** εάν επέτυχε η διαγραφή,​ διαφορετικά **false**.
   * ''​public boolean exists()''​ : Ελέγχει εάν το συγκεκριμένο αντικείμενο αντικατοπτρίζει ένα πραγματικό αρχείο ή κατάλογο στο filesystem.   * ''​public boolean exists()''​ : Ελέγχει εάν το συγκεκριμένο αντικείμενο αντικατοπτρίζει ένα πραγματικό αρχείο ή κατάλογο στο filesystem.
   * ''​public String getAbsolutePath()''​ : Επιστρέφει το απόλυτο path για ένα υπαρκτό αρχείο ή κατάλογο. Η συγκεκριμένη μέθοδος έχει νόημα εάν έχετε δημιουργήσει το αντικείμενο χρησιμοποιώντας ένα σχετικό path αντί για απόλυτο. ​   * ''​public String getAbsolutePath()''​ : Επιστρέφει το απόλυτο path για ένα υπαρκτό αρχείο ή κατάλογο. Η συγκεκριμένη μέθοδος έχει νόημα εάν έχετε δημιουργήσει το αντικείμενο χρησιμοποιώντας ένα σχετικό path αντί για απόλυτο. ​
   * ''​public String getName()''​ : Επιστρέφει μόνο το όνομα του αρχείου ή καταλόγου του.   * ''​public String getName()''​ : Επιστρέφει μόνο το όνομα του αρχείου ή καταλόγου του.
-  * ''​public boolean isDirectory()''​ : Ελέγχει εάν το συγκεκριμένο αντικείμενο αντιπροσωπεύει ένα ​directory+  * ''​public boolean isDirectory()''​ : Ελέγχει εάν το συγκεκριμένο αντικείμενο αντιπροσωπεύει ένα ​κατάλογο ή όχι
-  * ''​public boolean isFile()''​ : Ελέγχει ένα το συγκεκριμένο αντικείμενο είναι απλό αρχείο (όχι ​directory, , όχι ​ειδικό αρχείο).+  * ''​public boolean isFile()''​ : Ελέγχει ένα το συγκεκριμένο αντικείμενο είναι απλό αρχείο (όχι ​κατάλογος ή ειδικό αρχείο).
   * ''​public long length()''​ : Επιστρέφει το μήκος του αρχείου.   * ''​public long length()''​ : Επιστρέφει το μήκος του αρχείου.
-  * ''​public String[] list()''​ : Επιστρέφει ένα πίνακα από Strings που περιέχει τα ονόματα των περιεχόμενων αρχείων. Η συγκεκριμένη μέθοδος έχει νόημα μόνο εάν το αντικείμενο File αντιπροσωπεύει ένα ​directory. Διαφορετικά επιστρέφει **null**. +  * ''​public String[] list()''​ : Επιστρέφει ένα πίνακα από Strings που περιέχει τα ονόματα των περιεχόμενων αρχείων. Η συγκεκριμένη μέθοδος έχει νόημα μόνο εάν το αντικείμενο File αντιπροσωπεύει ένα ​κατάλογο. Διαφορετικά επιστρέφει **null**. 
-  * ''​public File[] listFiles()''​ : Επιστρέφει ένα πίνακα από Files που περιέχει τα αντικείμενα File για τα περιεχόμενα αρχεία. Η συγκεκριμένη μέθοδος έχει νόημα μόνο εάν το αντικείμενο File αντιπροσωπεύει ένα ​directory. Διαφορετικά επιστρέφει **null**.+  * ''​public File[] listFiles()''​ : Επιστρέφει ένα πίνακα από Files που περιέχει τα αντικείμενα File για τα περιεχόμενα αρχεία. Η συγκεκριμένη μέθοδος έχει νόημα μόνο εάν το αντικείμενο File αντιπροσωπεύει ένα ​κατάλογο. Διαφορετικά επιστρέφει **null**. 
 +  * ''​public boolean mkdir()''​ : Δημιουργεί ένα νέο κενό κατάλογο στο filesystem, εφόσον δεν υπάρχει. Επιστρέφει **true** εάν το directory δημιουργηθεί επιτυχώς,​ διαφορετικά επιστρέφει **false**.
   ​   ​
 ===== Παραδείγματα ===== ===== Παραδείγματα =====
Line 87: Line 89:
  
 <code java CreateEmptyFile.java>​ <code java CreateEmptyFile.java>​
 +
 +import java.io.File;​
  
 public class CreateEmptyFile { public class CreateEmptyFile {
Line 96: Line 100:
     File f = new File("​./"​+args[0]);​     File f = new File("​./"​+args[0]);​
     if( !f.exists() ) {     if( !f.exists() ) {
-      f.createNewFile();​+      ​try { 
 +        ​f.createNewFile();​ 
 +      } catch( Exception ex ) { 
 +        ex.printStackTrace();​ 
 +      }
     }     }
   }   }
Line 102: Line 110:
 </​code>​ </​code>​
  
 +<WRAP tip 80% center round>
 +Με βάση το παραπάνω πρόγραμμα δημιουργήστε μία παραλλαγή του που να δημιουργεί ένα directory με το όνομα που δίνετε από την γραμμή εντολών αντί για ένα κανονικό αρχείο.
 +</​WRAP>​
  
  
 +|Προηγούμενο:​ [[ java:​packages:​using | Χρήση (μεταγλωττισμένων) κλάσεων από άλλες κλάσεις ]] | [[ :toc | Περιεχόμενα ]] | Επόμενο:​ [[ :​java:​read_from_file | Διαβάζοντας από ένα αρχείο]] |
  
  
java/class_file.1458335085.txt.gz · Last modified: 2016/03/18 21:04 by gthanos