Problème dans java

Résolu
Bonjour,

Pourquoi j'ai cette erreur ?

"The system couldn't find a suitable main method"

Merci,

7 réponses

  1. Merci ça marche
    0
    1. j'y comprends toujours rien, je suis nul en JAVA

      peut tu me corriger l'ensemble de mon programme

      Merci beaucoup
      0
      1. Modérateur
        Ok, alors je reprends ton premier code, je ne fais aucune amélioration, je corrige juste les 3 bugs.

        1) "The system couldn't find a suitable main method" : je rajoute une méthode main
        2) "cannot find symbol class FileWriter" : je rajoute un import java.io.FileWriter;
        3) Le prénom n'apparaît pas dans le fichier : je modifie prénom="\r\n" par prénom+"\r\n"

        import java.io.FileWriter;
        
        public class La_fonction_ajoute 
        {
        	public static void ajoute(String nom, String prénom, String tél)
        	{
        		try
        		{
        			FileWriter fichierRépertoire = new FileWriter("c:\\Répertoire.txt",true);
        			fichierRépertoire.write(nom+"\r\n");
        			fichierRépertoire.write(prénom+"\r\n");
        			fichierRépertoire.write(tél+"\r\n");
        			fichierRépertoire.close();
        		}
        		catch (Exception e)
        		{
        			System.out.println(e.getMessage());
        		}
        	}
        	
        	public static void main(String args[])
        	{
        		ajoute("Nom","Prénom","Téléphone");
        	}
        }
        0
    2. Bonjour,

      J'ai 3 erreurs dans mon programme.

      Si quelqu'un peut me donner une solution

      merci

      3 erreurs...

      cannot find symbol class FileWriter ligne 3
      cannot find symbol class FileWriter ligne 17
      cannot find symbol variable fichierRépertoire ligne 27
      ____________________________________________________________

      class Fichier
      {
      protected final FileWriter fw;
      protected static final String endl = System.getProperty("line.separator");

      public static void main (String...args)
      {
      Fichier fichier = new Fichier("c:\\Répertoire.txt");

      fichier.ajoute("Un Nom", "Un Prénom", "Un Tél");

      fichier.fermer();
      }

      public Fichier(String fileName)
      {
      fw = new FileWriter(fileName,true);
      }

      public void ajoute(String nom, String prénom, String tél)
      {
      try
      {
      fw.write(nom+endl);
      fw.write(prénom+endl);
      fw.write(tél+endl);
      fichierRépertoire.close();
      }
      catch (Exception e)
      {
      System.out.println(e);
      }
      }

      public void fermer()
      {
      fw.close();
      }
      }
      0
      1. Modérateur
        Pour ton FileWriter c'est tout simplement qu'il te manque un import java.io.FileWriter

        fichierRépertoire.close(); c'est une étourderie de ma part, il faut le supprimer, j'ai remplacé fichierRépertoire par fw et le close se fait dans la méthode fermer().
        0
    3. Modérateur
      autre solution (celle que je préfère)

      /**
      * @(#)La_fonction_ajoute.java
      *
      * La_fonction_ajoute application
      *
      * @author
      * @version 1.00 2011/12/16
      */

      public class La_fonction_ajoute {

      public static void main (String args[]){

      La_fonction_ajoute laFonction = new La_fonction_ajoute();

      laFonction.ajoute("Un Nom", "Un Prénom", "Un Tél");

      }

      public void ajoute(String nom, String prénom, String tél)
      {
      try{
      FileWriter fichierRépertoire = new FileWriter("c:\\Répertoire.txt",true);
      fichierRépertoire.write(nom+"\r\n");
      fichierRépertoire.write(prénom="\r\n");
      fichierRépertoire.write(tél+"\r\n");
      fichierRépertoire.close();
      } catch (Exception e) {System.out.println(e.getMessage());}
      }
      }

      Chouba, Modo CCM
      Rhâââgnagna
      0
      1. Modérateur
        Je pense qu'il vaut mieux mettre le FileWriter dans le constructeur, sinon autant garder la méthode static. De plus "\r\n" c'est pas très joli...

        class Fichier
        {
        protected final FileWriter fw;
        protected static final String endl = System.getProperty("line.separator");
        
        public static void main (String...args)
        {
        	Fichier fichier = new Fichier("c:\\Répertoire.txt");
        
        	fichier.ajoute("Un Nom", "Un Prénom", "Un Tél");
        
        	fichier.fermer();
        }
        
        public Fichier(String fileName)
        {
        	fw = new FileWriter(,true);
        }
        
        public void ajoute(String nom, String prénom, String tél)
        {
        	try
        	{
        		fw.write(nom+endl);
        		fw.write(prénom+endl);
        		fw.write(tél+endl);
        		fichierRépertoire.close();
        	} 
        	catch (Exception e)
        	{
        		System.out.println(e);
        	}
        }
        
        public void fermer()
        {
        	fw.close();
        }
        }
        0
    4. Modérateur
      Essaye comme ça

      /**
      * @(#)La_fonction_ajoute.java
      *
      * La_fonction_ajoute application
      *
      * @author
      * @version 1.00 2011/12/16
      */

      public class La_fonction_ajoute {

      public static void main (String args[]){

      La_fonction_ajoute.ajoute("Un Nom", "Un Prénom", "Un Tél");

      }

      public static void ajoute(String nom, String prénom, String tél)
      {
      try{
      FileWriter fichierRépertoire = new FileWriter("c:\\Répertoire.txt",true);
      fichierRépertoire.write(nom+"\r\n");
      fichierRépertoire.write(prénom="\r\n");
      fichierRépertoire.write(tél+"\r\n");
      fichierRépertoire.close();
      } catch (Exception e) {System.out.println(e.getMessage());}
      }
      }

      Chouba, Modo CCM
      Rhâââgnagna
      0
      1. voici ma formule :

        /**
        * @(#)La_fonction_ajoute.java
        *
        * La_fonction_ajoute application
        *
        * @author
        * @version 1.00 2011/12/16
        */

        public class La_fonction_ajoute {

        public static void ajoute(String nom, String prénom, String tél)
        {
        try{
        FileWriter fichierRépertoire = new FileWriter("c:\\Répertoire.txt",true);
        fichierRépertoire.write(nom+"\r\n");
        fichierRépertoire.write(prénom="\r\n");
        fichierRépertoire.write(tél+"\r\n");
        fichierRépertoire.close();
        } catch (Exception e) {System.out.println(e.getMessage());}
        }
        }
        0
        1. Modérateur
          Bonjour

          Un programme débute toujours par une méthode "main"

          public static void main (String arg[])

          Vérifie dans ton programme...
          0