Maison  >  Article  >  Java  >  Gestion des fichiers en Java

Gestion des fichiers en Java

WBOY
WBOYavant
2023-08-18 15:45:12966parcourir

En programmation Java, la classe File du package java.io joue un rôle clé dans les opérations sur les fichiers. En créant un objet de cette classe et en spécifiant le nom du fichier, nous pouvons manipuler efficacement les fichiers.

Mais pourquoi la gestion des fichiers est-elle si importante ?

La gestion des fichiers revêt une grande importance dans les langages de programmation car elle nous permet de stocker la sortie du programme dans des fichiers et d'y effectuer diverses opérations. Fondamentalement, le traitement de fichiers implique l’acte de lire et d’écrire des données à partir de fichiers.

Vous utilisez des flux pour effectuer des opérations d'entrée/sortie (E/S) sur des fichiers. Il est très important de comprendre comment les opérations sur les fichiers sont effectuées en Java, alors familiarisez-vous avec ce concept.

Flux en Java

Java propose deux types de flux : les flux d'entrée sont utilisés pour lire les données et les flux de sortie sont utilisés pour écrire des données.

Flux d'entrée

La classe InputStream de Java sert de super classe pour tous les flux d'entrée. Les flux d'entrée sont responsables de la lecture des données provenant de divers périphériques d'entrée, tels que des claviers ou des connexions réseau. Bien qu'InputStream soit une classe abstraite et qu'elle ne soit pas directement utile en elle-même, ses sous-classes sont utilisées pour lire des données.

Certaines sous-classes remarquables de la classe InputStream incluent :

  • AudioInputStream

  • ByteArrayInputStream

  • FileInputStream

  • FilterInputStream

  • StringBufferInputStream

  • ObjectInputStream

Flux de sortie

Les flux de sortie, quant à eux, sont responsables de l'écriture des données sur divers périphériques de sortie, tels que des moniteurs ou des fichiers. La classe OutputStream sert de superclasse abstraite représentant un flux de sortie. Semblable à InputStream, OutputStream est également abstrait et nécessite l'utilisation de ses sous-classes pour écrire des données.

Certaines sous-classes remarquables de la classe OutputStream incluent :

  • ByteArrayOutputStream

  • FileOutputStream

  • StringBufferOutputStream

  • ObjectOutputStream

  • DataOutputStream

  • PrintStream

Selon le type de données traitées, les flux peuvent être divisés en deux types : le flux d'octets et le flux de caractères.

Méthodes de fichiers en Java

La classe File en Java fournit un ensemble de méthodes utiles pour travailler avec des fichiers. Voici plusieurs méthodes importantes de la classe File :

Nom de la méthode

Signification de la méthode

Type de retour

canRead()

Vérifiez si le fichier est lisible

Booléen

canWrite()

Vérifiez si vous pouvez écrire dans le fichier

Booléen

createNewFile()

Cette méthode crée un fichier vide

Booléen

supprimer()

Vous aide à supprimer des fichiers

Booléen

existe()

Vérifiez si le fichier existe

Booléen

longueur()

Cette méthode renvoie la taille totale du fichier en octets

Longue

getName()

Renvoyer le nom du fichier

Chaîne

list()

Renvoie un tableau de fichiers dans le répertoire

Chaîne[]

mkdir()

Cette fonction crée un nouveau répertoire

Booléen

getAbsolutePath()

Cette fonction renvoie le nom de chemin absolu d'un fichier

Chaîne

Créer un fichier

En Java, la méthode CreateNewFile() est utilisée pour créer un nouveau fichier. Lorsqu'un nouveau fichier est créé avec succès, la sortie renvoie vrai. Dans tous les autres cas, il renverra false.

createNewFile()

Vous trouverez ci-dessous un exemple de code pour cette opération.

Algorithme

  • Étape 1 : Tout d'abord, nous devons importer les classes Java nécessaires : "java io file" et "java io io exception".

  • Étape 2 : Nous allons ensuite créer une classe publique. Ici, nous avons sélectionné un FileExample.

  • Étape 3 : Définir la méthode principale dans la classe.

  • Étape 4 : Démarrez un bloc try-catch pour la gestion des exceptions.

  • Étape 5 : Créez un nouvel objet fichier nommé "myfile.txt" à l'intérieur du bloc try.

  • Étape 6 : Utilisez sa méthode « Créer un nouveau fichier » pour créer réellement le fichier.

  • Étape 7 : Nous utiliserons l'instruction if else pour vérifier si ce processus a réussi.

  • Étape 8 : Si la création réussit, nous imprimerons « Fichier créé » suivi du nom de fichier obtenu via la méthode file.getName().

  • Étape 9 : Sinon, si le fichier existe déjà, nous imprimerons « Le fichier existe déjà ».

  • Étape 10 : Terminez l'instruction if-else.

  • Étape 11 : Terminez le bloc d'essai.

  • Étape 12 : Détectez toute exception IOException pouvant survenir et imprimez le message d'erreur.

  • Étape 13 : Imprimez la trace de pile de l'exception.

  • Étape 14 : Comme dernière étape, quittons le programme

La traduction chinoise de

Exemple

est :

Exemple

import java.io.File;
import java.io.IOException;

public class FileExample {
    public static void main(String[] args) {
        try {
            File file = new File("myfile.txt");
            if (file.createNewFile()) {
                System.out.println("File created: " + file.getName());
            } else {
                System.out.println("File already exists.");
            }
        } catch (IOException e) {
            System.out.println("An error has occurred.");
            e.printStackTrace();
        }
    }
}

Sortie

File created: myfile.txt

Lire à partir d'un fichier

En Java, il existe de nombreuses façons de lire et d'écrire des fichiers texte. Voici quelques façons de lire des fichiers texte brut :

  • Utilisez la classe BufferedReader : En mettant les données en mémoire tampon, la classe BufferedReader permet une lecture efficace. Il parcourt le fichier ligne par ligne.

  • Utilisation de la classe Scanner : La classe Scanner comprend des méthodes de traitement et de lecture des entrées. Il est capable de lire des fichiers texte ligne par ligne.

  • Utilisation de la classe FileReader : La classe FileReader est utilisée pour lire les fichiers de caractères. Il lit le fichier caractère par caractère ou selon la taille de tampon donnée.

  • Lire un fichier entier dans une liste : Vous pouvez utiliser l'API de streaming de Java 8 pour lire un fichier entier dans une liste de chaînes, où chaque ligne est un élément différent.

  • Lire le fichier texte sous forme de chaîne : Vous pouvez utiliser l'API Streaming de Java 8 pour lire l'intégralité du contenu du fichier sous la forme d'une seule chaîne.

Écrire dans un fichier

Pour écrire du texte dans un fichier, vous pouvez utiliser la classe FileWriter. Il vous permet d'écrire des données dans des fichiers.

La traduction de

FileWriter()

est :

FileWriter()

Algorithme :

  • Étape 1 : Créez une classe publique appelée FileExample.

  • Étape 2 : Définir la méthode principale dans la classe.

  • Étape 3 : Démarrez un bloc try-catch pour la gestion des exceptions.

  • Étape 4 : Dans le bloc try, créez un nouvel objet FileWriter nommé écrivain en utilisant le nom de fichier "myfile.txt".

  • Étape 5 : Utilisez la méthode write() de l'objet écrivain pour écrire le texte "Les fichiers en Java sont vraiment bons !!"

  • Étape 6 : Utilisez la méthode close() pour fermer l'objet écrivain.

  • Étape 7 : Imprimez « Écrire avec succès ».

  • Étape 8 : Terminez le bloc d'essai.

  • Étape 9 : Détectez toute exception IOException pouvant survenir et imprimez le message d'erreur.

  • Étape 10 : Imprimez la trace de pile de l'exception.

  • Étape 11 : Fermez le programme

La traduction chinoise de

Exemple

est :

Exemple

import java.io.FileWriter;
import java.io.IOException;

public class FileExample {
    public static void main(String[] args) {
        try {
            FileWriter writer = new FileWriter("myfile.txt");
            writer.write("Files in Java are seriously good!!");
            writer.close();
            System.out.println("Successfully has been written.");
        } catch (IOException e) {
            System.out.println("An error has occurred.");
            e.printStackTrace();
        }
    }
}

Sortie

Successfully has been written.

Supprimer des fichiers

Pour supprimer un fichier, vous pouvez utiliser la méthode delete() de la classe File. Il renverra vrai si le fichier a été supprimé avec succès.

delete()

se traduit par :

delete()

Ce code Java illustre la suppression de fichiers à l'aide de la classe File. Il crée un objet File nommé "myfile.txt". Si delete() réussit, le nom du fichier supprimé sera affiché. En cas d'échec, un message d'échec s'affichera. La sortie confirme la suppression réussie de "myfile.txt".

Algorithme

  • Étape 1 : Créez un nouvel objet Fichier nommé fichier.

  • Etape 2 : Passez le nom du fichier à supprimer en paramètre. Dans cet exemple, le nom de fichier que nous utilisons est « monfichier.txt ».

  • Étape 3 : Écrivez une instruction if pour vérifier si 'delete()' est exécuté avec succès dans ce fichier

  • Étape 4 : Si vous avez réussi à supprimer le fichier, vous pouvez utiliser file.getName() pour afficher « Le fichier supprimé est : » ainsi que le nom du fichier.

  • Étape 5 : Si notre tentative de suppression échoue, notre résultat sera "Impossible de supprimer le fichier."

  • Étape 6 : Enfin, terminez l'instruction if.

  • Étape 7 : Inutile de dire que vous terminez la procédure.

Example

的中文翻译为:

示例

import java.io.File;

public class FileExample {
    public static void main(String[] args) {
        File file = new File("myfile.txt");
        if (file.delete()) {
            System.out.println("The deleted file is: " + file.getName());
        } else {
            System.out.println("Failed to delete the file.");
        }
    }
}

输出

Failed to delete the file.

结论

在Java中,文件处理对于操作文件和执行各种操作非常重要。File类允许我们有效地创建对象并处理文件。对于文件的输入/输出(I/O)操作,您可以使用流。在Java中,您可以使用createNewFile()、delete()和length()方法来处理文件,如本文所讨论的。

BufferedReader、Scanner和FileReader方法有助于读取文本文件。使用FileWriter可以将内容写入文件。在Java中,有效处理文件对于高效的数据存储和恢复至关重要。

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer