Problème dans java

Résolu/Fermé
westerndigit Messages postés 134 Date d'inscription mercredi 16 février 2011 Statut Membre Dernière intervention 18 avril 2012 - 16 déc. 2011 à 04:39
westerndigit Messages postés 134 Date d'inscription mercredi 16 février 2011 Statut Membre Dernière intervention 18 avril 2012 - 18 déc. 2011 à 06:28
Bonjour,

Pourquoi j'ai cette erreur ?

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

Merci,
A voir également:

7 réponses

choubaka Messages postés 39407 Date d'inscription jeudi 4 avril 2002 Statut Modérateur Dernière intervention 9 décembre 2024 2 104
16 déc. 2011 à 04:49
Bonjour

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

public static void main (String arg[])

Vérifie dans ton programme...
0
westerndigit Messages postés 134 Date d'inscription mercredi 16 février 2011 Statut Membre Dernière intervention 18 avril 2012
16 déc. 2011 à 05:00
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
choubaka Messages postés 39407 Date d'inscription jeudi 4 avril 2002 Statut Modérateur Dernière intervention 9 décembre 2024 2 104
Modifié par choubaka le 16/12/2011 à 07:46
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
choubaka Messages postés 39407 Date d'inscription jeudi 4 avril 2002 Statut Modérateur Dernière intervention 9 décembre 2024 2 104
Modifié par choubaka le 16/12/2011 à 07:49
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
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
16 déc. 2011 à 08:03
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
westerndigit Messages postés 134 Date d'inscription mercredi 16 février 2011 Statut Membre Dernière intervention 18 avril 2012
17 déc. 2011 à 16:33
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
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
17 déc. 2011 à 16:39
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
westerndigit Messages postés 134 Date d'inscription mercredi 16 février 2011 Statut Membre Dernière intervention 18 avril 2012
18 déc. 2011 à 04:13
j'y comprends toujours rien, je suis nul en JAVA

peut tu me corriger l'ensemble de mon programme

Merci beaucoup
0
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
18 déc. 2011 à 06:07
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
westerndigit Messages postés 134 Date d'inscription mercredi 16 février 2011 Statut Membre Dernière intervention 18 avril 2012
18 déc. 2011 à 06:28
Merci ça marche
0