java:byte_streams

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
Next revision Both sides next revision
java:byte_streams [2015/03/10 11:45]
gthanos [Χρησιμοποιώντας Byte Streams]
java:byte_streams [2015/03/10 11:49]
gthanos [Σε ποιες περιπτώσεις να μην χρησιμοποιείτε τα Byte Streams]
Line 50: Line 50:
 Ένα πιθανό σφάλμα είναι ότι το //​CopyBytes//​ δεν μπόρεσε να ανοίξει το ένα ή και τα δύο αρχεία. Σε αυτή την περίπτωση θα παραχθεί ένα //I/O Exception//​. Όταν συμβαίνει αυτό, η stream μεταβλητή που αντιστοιχεί στο αρχείο δεν αλλάζει ποτέ από την αρχική null τιμή του. Αυτός είναι ο λόγος για τον οποίο το //​CopyBytes//​ φροντίζει ώστε κάθε stream μεταβλητή να περιέχει μια αναφορά αντικειμένου πριν από την κλήση του //close//. Ένα πιθανό σφάλμα είναι ότι το //​CopyBytes//​ δεν μπόρεσε να ανοίξει το ένα ή και τα δύο αρχεία. Σε αυτή την περίπτωση θα παραχθεί ένα //I/O Exception//​. Όταν συμβαίνει αυτό, η stream μεταβλητή που αντιστοιχεί στο αρχείο δεν αλλάζει ποτέ από την αρχική null τιμή του. Αυτός είναι ο λόγος για τον οποίο το //​CopyBytes//​ φροντίζει ώστε κάθε stream μεταβλητή να περιέχει μια αναφορά αντικειμένου πριν από την κλήση του //close//.
  
-==== Πότε να μην χρησιμοποιείτε τα Byte Streams ====+==== Σε ποιες περιπτώσεις να μην χρησιμοποιείτε τα Byte Streams ====
  
-Το //​CopyBytes//​ φαίνεται σαν ένα φυσιολογικό πρόγραμμα,​ αλλά αποτελεί στην πραγματικότητα ένα είδος I / O χαμηλού επιπέδου που θα πρέπει να αποφεύγετε. Δεδομένου ότι το //​xanadu.txt//​ περιέχει δεδομένα χαρακτήρων,​ η καλύτερη προσέγγιση είναι να χρησιμοποιήσετε [[java:​character_streams|streams χαρακτήρων]],​ όπως αναλύεται στην επόμενη ενότητα. Υπάρχουν επίσης streams για πιο πολύπλοκους τύπους δεδομένων. Τα byte streams θα πρέπει να χρησιμοποιούνται μόνο για πιο primitive I / O. Τέλος, κάτι που πρέπει να θυμόμαστε για τα byte streams είναι ότι όλα τα άλλα είδη stream είναι βασισμένα πάνω τους.+Το //​CopyBytes//​ φαίνεται σαν ένα φυσιολογικό πρόγραμμα,​ αλλά αποτελεί στην πραγματικότητα ένα είδος I/O χαμηλού επιπέδου που θα πρέπει να αποφεύγετε. Δεδομένου ότι το //​xanadu.txt//​ περιέχει δεδομένα χαρακτήρων,​ η καλύτερη προσέγγιση είναι να χρησιμοποιήσετε [[java:​character_streams|streams χαρακτήρων]],​ όπως αναλύεται στην επόμενη ενότητα. Υπάρχουν επίσης streams για πιο πολύπλοκους τύπους δεδομένων. Τα byte streams θα πρέπει να χρησιμοποιούνται μόνο για πιο primitive I/O. Τέλος, κάτι που πρέπει να θυμόμαστε για τα byte streams είναι ότι όλα τα άλλα είδη stream είναι βασισμένα πάνω τους.
  
 |Προηγούμενο:​ [[:​java:​file_io_intro | Είσοδος και έξοδος αρχείων ]]| Επόμενο:​ [[:​java:​character_streams | Streams Χαρακτήρων]] | |Προηγούμενο:​ [[:​java:​file_io_intro | Είσοδος και έξοδος αρχείων ]]| Επόμενο:​ [[:​java:​character_streams | Streams Χαρακτήρων]] |
  
java/byte_streams.txt · Last modified: 2016/02/26 11:15 (external edit)