Problème dans java

Résolu
westerndigit Messages postés 161 Statut Membre -  
westerndigit Messages postés 161 Statut Membre -
Bonjour,

Pourquoi j'ai cette erreur ?

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

Merci,

7 réponses

  1. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    Bonjour

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

    public static void main (String arg[])

    Vérifie dans ton programme...
    0
  2. westerndigit Messages postés 161 Statut Membre
     
    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
  3. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    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
  4. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    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. KX Messages postés 19031 Statut Modérateur 3 020
       
      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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. westerndigit Messages postés 161 Statut Membre
     
    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. KX Messages postés 19031 Statut Modérateur 3 020
       
      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
  7. westerndigit Messages postés 161 Statut Membre
     
    j'y comprends toujours rien, je suis nul en JAVA

    peut tu me corriger l'ensemble de mon programme

    Merci beaucoup
    0
    1. KX Messages postés 19031 Statut Modérateur 3 020
       
      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
  8. westerndigit Messages postés 161 Statut Membre
     
    Merci ça marche
    0