Java RandomAccessfile

Java RandomAccessfile
Nous examinerons la classe RandomAccessFile dans cet article. Il utilise un curseur pour déplacer l'emplacement du pointeur à travers le fichier. La possibilité d'accéder au fichier lui donne le nom, RandomAccessfile.

Exemple 1: Texte de consultation à la fin d'un fichier

Dans cet exemple, nous ajouterons le texte à la fin du fichier suivant en utilisant les méthodes de la classe RandomAccessFile.

Tout d'abord, nous importons le java.Io. Classe RandomAccessfile. Ensuite, nous faisons un nouvel objet du RandomAccessfile en appelant le constructeur du RandomAccessFile («Fichier.txt "," rw "). Avec le nom de fichier et le mode, cet objet fonction () construit un flux RandomAccessFile. Dans ce cas, le mode est «RW» qui lance le fichier en mode lecture-écriture.

La méthode «Seek ()» est utilisée dans la ligne suivante avec le fichier de paramètre. La méthode Longueur () définit le curseur / pointeur vers la position spécifiée. Dans le cas précédent, c'est la fin du texte du fichier. Ensuite, la méthode writeBytes () est appelée avec la chaîne («ipsum») comme paramètres. Cette méthode écrit la chaîne à partir du pointeur de fichiers actuel ou du curseur. F.Méthode close () ferme le flux de fichiers d'accès aléatoire. Toutes les ressources système utilisées par le flux sont libérées.

Après avoir compilé le code donné, nous pouvons voir les «données ajoutées avec succès» dans le terminal qui indique que le code a exécuté avec succès. Ensuite, si nous ouvrons le «fichier.Fichier txt »dans lequel nous avons ajouté les données dans notre code, nous pouvons voir que nos données sont annexées avec succès à la fin du fichier.

Exemple 2: lire le texte à partir d'un fichier texte

Dans cet exemple, nous lirons le contenu d'un fichier texte en utilisant les méthodes de la classe RandomAccessFile. Le fichier à lire dans cet exemple est comme indiqué dans ce qui suit:

Dans le code donné, nous importons d'abord le «Java.Io.RandomAccessFile »afin d'utiliser ses méthodes et fonctions. Ici, nous créons un flux RandomAccessFile avec le mode «R» qui représente qu'il est en mode en lecture seule. Le décalage actuel en octets à partir du démarrage du fichier est fourni par le «F.Fonction getFilePointer () ”. Ensuite, nous fournissons cette valeur à la fonction Seek () qui définit le pointeur de fichier vers le début du fichier où la lecture suivante a lieu. Après cela, nous générons un tableau de 5 octets. Lorsque la méthode de lecture est appelée avec ce tableau comme paramètre (F.lire (octets)), les 5 octets sont lus à partir du fichier et sont ajoutés au tableau de 5 octets.

Le F.Méthode close () ferme le flux RandomAccessFile. Toutes les ressources système utilisées par le flux sont libérées.

Enfin, les octets de retour renvoient le tableau dans lequel le texte du fichier est lu et ajouté. Cela peut être vu dans ce qui suit que seulement 5 caractères du fichier sont affichés sur le terminal.

Exemple 3: écrire du texte dans un fichier texte

Dans cet exemple, nous utiliserons les méthodes Seek (), Write () et Close () pour écrire les données dans un fichier texte. La fonction Get Bytes est également utilisée dans cet exemple pour écrire.

Dans le code donné, nous importons d'abord le java.Io. RandomAccessfile pour utiliser ses méthodes et fonctions. Ici, nous créons un flux RandomAccessFile avec le mode «RW» qui représente qu'il est en mode lecture-écriture. Le F.Seek (5) La méthode déplace la position du pointeur de fichier vers le 5e indice. Ensuite, le f.Écrire («données».GetBytes ()) écrit les nouveaux octets de «données» et remplace les octets existants le cas échéant à cet endroit.

Le F.Méthode close () ferme le flux RandomAccessFile. Toutes les ressources système utilisées par le flux sont libérées.

Une fois la compilation terminée, la chaîne «Données ajoutées avec succès» s'affiche sur le terminal pour indiquer que le code a exécuté avec succès. Le fichier texte où nous avons écrit le texte à l'aide du RandomAccessFile est affiché dans les éléments suivants:

Exemple 4: ajoutant, ajout de texte dans un fichier et lecture du texte du fichier

Dans cet exemple, nous implémenterons toutes les différentes approches que nous pouvons adopter avec l'objet de classe RandomAccessFile et ses multiples fonctions pour écrire, ajouter et lire les données à partir d'un fichier texte.

Nous créons trois fonctions différentes dans une seule classe pour écrire, ajouter les données et lire le contenu du fichier texte. Dans la fonction des données et des données d'écriture, nous utilisons la fonction écrite () à l'aide de l'objet de la classe RandomAccessFile. Dans la fonction de données d'ajout, nous ajoutons les données après le dernier octet du fichier à l'aide du fichier.Longueur () Fonction comme un paramètre dans la fonction Seek (). Dans la fonction de données d'écriture, nous insérons les données au début du fichier en passant une valeur entière dans la fonction Seek (). Ce faisant, la fonction de données d'ajout est en mesure d'ajouter les données à la fin du fichier. Dans la dernière fonction, nous utilisons la fonction read () pour lire les octets du fichier. Dans cette fonction, nous passons deux paramètres qui servent de plage à partir de laquelle nous voulons lire les données de.

Comme nous pouvons le voir dans le terminal, la sortie montre uniquement les 5 premiers octets du fichier car la plage est définie dans la fonction read (). Maintenant, nous ouvrons le fichier texte et vérifions que les données sont insérées et annexées à la position correcte.

Comme nous pouvons le voir dans l'extrait précédent, les données du fichier texte sont correctement insérées après avoir exécuté notre programme Java.

Conclusion

Nous avons discuté de l'utilisation de la classe RandomAccessFile à Java dans cet article. L'objet de cette classe est utilisé pour appeler les multiples fonctions qui sont lucratives dans l'extraction et l'insertion des données dans un fichier texte. Nous avons mis en œuvre plusieurs exemples des différentes méthodes de cette classe dans l'Ubuntu 20.04 Environnement. Nous avons utilisé les méthodes écrits (), cherchez () et lis () dans ces exemples pour insérer les données dans un fichier texte et lire le contenu du fichier texte après cela.