Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

IO Java Discussion :

Tutoriel sur la manipulation des fichiers


Sujet :

IO Java

  1. #1
    Membre régulier Avatar de gelam
    Profil pro
    Inscrit en
    novembre 2003
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : novembre 2003
    Messages : 69
    Points : 74
    Points
    74
    Par défaut Tutoriel sur la manipulation des fichiers
    Bonjour,
    J'ai préparé un support de cours concernant la gestion des fichiers avec Java.
    Pouvez-vous me faire part de vos remarques et commentaires ?
    Pensez-vous que ce document aurait sa place dans les tutoriel java de developpez ?

    Un grand merci pour vos futures réponses.

    P.S. : ce document n'a pas la prétension d'être complet. Il a pour but de fournir les éléments de base pour les manipulations de base.
    Images attachées Images attachées
    Avez-vous remarqué les progrès que fait l'ignorance?
    [Tristan Bernard ]

  2. #2
    Membre éclairé Avatar de zorm
    Profil pro
    Inscrit en
    décembre 2004
    Messages
    584
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : décembre 2004
    Messages : 584
    Points : 672
    Points
    672
    Par défaut
    Bonjour,

    J'ai trouvé ce document interressant, il faudrait par contre corriger toutes les fautes qui sont assez nombreuses à bien y regarder, aussi bien d'orthographe, de grammaire comme de ponctuation (on n'insistera jamais assez sur l'importance de la virgule dans un texte ).

    J'ai une question, ceci n'est pas un peu contradictoire?
    Il n'est pas possible d'ouvrir un fichier en lecture et en écriture. Il existe une classe qui permet ce mode mixte.
    Ce cours doit s'adresser à des élèves de quel niveau?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Par exemple pour ouvrir un fichier texte en écriture :
    FileWriter flux = new FileWriter("c:/exemple.txt");
    PrintWriter fWrite = new PrintWriter( flux );
     Cette déclaration peut se faire en une seule opération
    PrintWriter fWrite = new PrintWriter( new FileWriter("c:/exemple.txt") );
    Échec lors de fermeture : Des données sont dans le tampon et ne peuvent pas être flushées.
    Entre ces 2 citations, on saute du coq à l'ane. La difference de niveau est très importante. Si les étudiants sont débutants, la deuxième citation risque d'en pertuber plus d'un .

    A suivre ...

  3. #3
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : janvier 2007
    Messages : 2 752
    Points : 4 437
    Points
    4 437
    Par défaut
    Même remarque que zorm.

    J'ajouterais que j'ai particulièrement apprécié l'aspect "A jour" de cet article, dans lequel tu donnes un exemple d'utilisation de la classe Scanner à la fin.

    Par contre, pour justement avoir un tuto complètement à jour par rapport aux derniers JDK, je trouve qu'il manque un commentaire (avec éventuellement un exemple d'utilisation) sur la classe Channel, qui permet d'optimiser les lectures/écritures de fichier.
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  4. #4
    Membre régulier Avatar de gelam
    Profil pro
    Inscrit en
    novembre 2003
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : novembre 2003
    Messages : 69
    Points : 74
    Points
    74
    Par défaut
    Merci pour ces premières remarques.
    J'ai en effet encore du travail de relecture à faire...
    Ces étudiants suivent une formation de type BAC+2 orientée informatique de gestion (vive Bologne). Ce chapitre sera traité en fin de première ou en début de deuxième.
    La deuxième citation fait partie d'une liste d'erreurs possibles et ne nécessitent pas d'explications détaillées dans cette partie introductive.
    Avez-vous remarqué les progrès que fait l'ignorance?
    [Tristan Bernard ]

  5. #5
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : février 2005
    Messages : 2 636
    Points : 5 936
    Points
    5 936
    Par défaut
    J'ai lu vite fait et ça m'a l'air pas mal.

    Voici quelques petites remarques :
    • Partie 1.8 Fermeture : insister sur le fait que la méthode close() doit être exécutée dans un bloc finally comme dans cet exemple (Partie 2.1.1) (mais il faut rajouter un test car f peut être null si une exception est levée à l'instanciation)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    public void creation() throws IOException, ClassNotFoundException {    
        ObjectOutputStream f = null;
        try {
            f = new ObjectOutputStream(new FileOutputStream("c:/exemple.bin"));
            f.writeObjectI(new Data(1,"un"));
            f.writeObjectI(new Data(2,"deux"));
            f.writeObjectI(new Data(3,"trois"));
            f.writeObjectI(new Data(4,"quatre"));
        } finally {
            if(f != null) {
                f.close();
            }
        }
    }
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

Discussions similaires

  1. [Lazarus] [Mandriva 2009] Manipuler des fichiers OpenOffice sur Linux
    Par CKDevelop dans le forum Lazarus
    Réponses: 4
    Dernier message: 14/02/2009, 14h23
  2. Manipulation des fichiers sur Delphi
    Par bledman dans le forum Débuter
    Réponses: 3
    Dernier message: 20/09/2007, 14h19
  3. Manipuler des fichiers sur un server Web
    Par N0euX dans le forum VB.NET
    Réponses: 1
    Dernier message: 29/08/2007, 18h49
  4. Manipuler des fichiers sur un server Web
    Par N0euX dans le forum C++
    Réponses: 11
    Dernier message: 02/08/2007, 20h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo