Les API principales que vous devez connaître sont listées dans le Tableau 14.14. Nous savons que certaines classes semblent similaires. Vous devez connaître ce tableau vraiment bien.
TABLEAU 14.14 API Principales
Classe | Objectif |
---|---|
File | Représentation I/O de l’emplacement dans le système de fichiers |
Files | Méthodes utilitaires pour travailler avec Path |
Path | Représentation NIO.2 de l’emplacement dans le système de fichiers |
Paths | Contient des méthodes d’usine pour obtenir Path |
URI | Identifiant de ressource uniforme pour fichiers, URLs, etc. |
FileSystem | Représentation NIO.2 du système de fichiers |
FileSystems | Contient des méthodes d’usine pour obtenir FileSystem |
InputStream | Superclasse pour lire des fichiers basés sur des octets |
OutputStream | Superclasse pour écrire des fichiers basés sur des octets |
Reader | Superclasse pour lire des fichiers basés sur des caractères |
Writer | Superclasse pour écrire des fichiers basés sur des caractères |
De plus, la Figure 14.8 montre toutes les classes I/O stream que vous devriez connaître, à l’exception des flux de filtre. FilterInputStream et FilterOutputStream sont des superclasses de haut niveau qui filtrent ou transforment des données. Elles sont rarement utilisées directement.
FIGURE 14.8 Diagramme des classes I/O stream
Les InputStreamReader et OutputStreamWriter sont incroyablement pratiques et sont également uniques en ce qu’ils sont les seules classes I/O stream à avoir à la fois InputStream/OutputStream et Reader/Writer dans leur nom.
Hiérarchie des classes I/O stream
Le diagramme montre la hiérarchie suivante :
Classes d’entrée basées sur les octets :
- InputStream (classe abstraite)
- FileInputStream (classe de bas niveau)
- FilterInputStream
- BufferedInputStream
- ObjectInputStream
Classes d’entrée basées sur les caractères :
- Reader (classe abstraite)
- BufferedReader
- InputStreamReader
- FileReader (classe de bas niveau)
Classes de sortie basées sur les octets :
- OutputStream (classe abstraite)
- FileOutputStream (classe de bas niveau)
- FilterOutputStream
- BufferedOutputStream
- PrintStream
- ObjectOutputStream
Classes de sortie basées sur les caractères :
- Writer (classe abstraite)
- BufferedWriter
- OutputStreamWriter
- FileWriter (classe de bas niveau)
- PrintWriter