Un certain nombre de méthodes utiles non pas été expliquées ou illustrées.
Voici les principales.
La classe FileOutputStream possède
une méthode flush() qui force la vidange du
flot et donc l'écriture des caractères sur la cible. La vidange
a lieu de toutes façons lors de la fermeture du flot, mais il est parfois
nécessaire de la provoquer de façon anticipée.
La classe FileInputStream possède
une méthode int available() qui renvoie le nombre
d'octets disponibles à la lecture. Elle possède également une méthode
long skip(long v) qui permet d'ignorer v octets
dans le flot. Les formats binaires présentent souvent des variations. Pour
laisser la possibilité de faire des extensions, certaines de ces variations
laissent des octets sans signification. La méthode skip
permet alors de les ignorer.
Il convient de distinguer le flot (orienté) du fichier (source ou cible d'un flot).
En programmation système, il est souvent nécessaire de manipuler les fichiers en tant
que tel, indépendamment de leur contenu. La classe java.io.File
permet cette manipulation. Sa méthode String getName()
permet de connaître le nom du fichier, ce qui n'a pas de sens sur un flot. Sa méthode
boolean exists() renvoie true si et seulement si le fichier
existe réellement ou doit être créé. La méthode boolean isDirectory()
renvoie true si le fichier en question représente un dossier. La méthode
void mkDir() permet de créer un nouveau répertoire.
La méthode File[] listFiles() renvoie la liste des fichiers
(y compris les sous-répertoires) contenus dans un répertoire.