Petite souci dans ce code

guelop80 Messages postés 5 Date d'inscription vendredi 11 juin 2004 Statut Membre Dernière intervention 23 décembre 2004 - 22 déc. 2004 à 15:19
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 - 23 déc. 2004 à 10:57
voila ce que je doit faire:

java Tel michel
Affiche le numro de tlphone du contact "michel".
java Tel -i michel "01 23 45 67 89"
Insert le numro de tlphone du contact "michel".
java Tel -d michel
Insert le numro de tlphone du contact "michel".
java Tel
Affiche l'aide d'utilisation.

L'utilitaire utilisera un fichier pour stocker les donnes. Le format du fichier est laiss libre.

mon code:

import java.io.*;
import java.util.*;

class Annuaire
{
Hashtable annu = new Hashtable();
public Annuaire (String filename) throws IOException
{
String line;
File f = new File(filename);
if(f.exists())
{
System.out.println("fichier ok");
}
else
{
System.out.println("fichier pas ok");
}
if(f.exists() && f.isFile() && f.canRead())
{
BufferedReader in = null;
try{in = new BufferedReader(new FileReader(f));}
catch(IOException e){e.printStackTrace(); annu = null;}
if(annu != null)
{
try{line = in.readLine();}
catch(IOException e) {line = null;}
while(line != null)
{
String[] s = line.split("\\t", 2);
annu.put(s[0].trim(),s[1]);
try{line = in.readLine();}
catch(IOException e) {line = null;}
}
}
}
}

public String get(String section)
{
if(annu.containsKey(section))
{ return (String)annu.get(section);}
return null;
}

public void set(String nom, String tel)
{
annu.put(nom,tel);
this.save();
}

public void del(String nom)
{
if(annu.containsKey(nom))
{
annu.remove(nom);
this.save();
}
}
}

aider moi sil vous plait!!!!!!!!

8 réponses

cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
22 déc. 2004 à 15:36
:big) Neodante :big)

Hum ... c'est quoi le problème ??? Faire ton exercice ??? Qu'est ce que tu as besoin ???
Je sais pas où est ton main d'ailleurs donc dur dur de lancer ton programme !
@+

[Responsable www.neogamedev.com et Admin CS]
0
guelop80 Messages postés 5 Date d'inscription vendredi 11 juin 2004 Statut Membre Dernière intervention 23 décembre 2004
22 déc. 2004 à 15:43
cest exact excuser moi jme sui planter de code:

import java.io.*;
import java.util.*;

public class Tel

{

public static void main (String[] args)
{
Annuaire annu;

try{annu = new Annuaire ("Tel.txt");}
catch(IOException e){e.printStackTrace(); annu = null;}
if(args.length == 1)
{
System.out.println(annu.get(args[0]));
}

else
{ if(args.length 2 && args[0].compareTo("-d") 0)
{
annu.remove(args[0], args[1]);
}
else
{ if(args.length 3 && args[0].compareTo("-i") 0)
{
annu.set(args[1], args[2]);
}
}
}
}
}

class Annuaire
{
Hashtable annu = new Hashtable();
public Annuaire (String filename) throws IOException
{
String line;
File f = new File(filename);
if(f.exists())
{
System.out.println("fichier ok");
}
else
{
System.out.println("fichier pas ok");
}
if(f.exists() && f.isFile() && f.canRead())
{
BufferedReader in = null;
try{in = new BufferedReader(new FileReader(f));}
catch(IOException e){e.printStackTrace(); annu = null;}
if(annu != null)
{
try{line = in.readLine();}
catch(IOException e) {line = null;}
while(line != null)
{
String[] s = line.split("\\t", 2);
annu.put(s[0].trim(),s[1]);
try{line = in.readLine();}
catch(IOException e) {line = null;}
}
}
}
}

public String get(String section)
{
if(annu.containsKey(section))
{ return (String)annu.get(section);}
return null;
}

public void set(String nom, String tel)
{
annu.put(nom,tel);
this.save();
}

public void del(String nom)
{
if(annu.containsKey(nom))
{
annu.remove(nom);
this.save();
}
}
}
0
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
22 déc. 2004 à 16:07
:big) Neodante :big)

lu,
maintenant que nous avons le bon code source est-ce que je pourrais connaître ton problème ??? ;-) QU'est ce qui te manque dans ton code ou qu'est ce que tuas comme exception ???
@+

[Responsable www.neogamedev.com et Admin CS]
0
guelop80 Messages postés 5 Date d'inscription vendredi 11 juin 2004 Statut Membre Dernière intervention 23 décembre 2004
22 déc. 2004 à 16:21
jarrive pas a le compiler car jai 3 erreurs lors de la compilation:

Tel.java:24: cannot resolve symbol
symbol :method remove (java.lang.String,java.lang.String)
location:class Annuaire
annu.remove(args[0], args[1]);
^

Tel.java:86: cannot resolve symbol
symbol :method save()
location:class Annuaire
this.save();
^

Tel.java:95: cannot resolve symbol
symbol :method save()
location:class Annuaire
this.save();
^
0

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

Posez votre question
guelop80 Messages postés 5 Date d'inscription vendredi 11 juin 2004 Statut Membre Dernière intervention 23 décembre 2004
22 déc. 2004 à 16:24
le premier ^ étant sur le point entre annu et remove
et les 2 autres sur this
0
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
22 déc. 2004 à 21:46
:big) Neodante :big)

Tel.java:24: cannot resolve symbol
symbol :method remove (java.lang.String,java.lang.String)
location:class Annuaire
annu.remove(args[0], args[1]);

-->La méthode remove avec 2 arguments n'existe pas !!! Il faut mettre juste la clé ...

Tel.java:95: cannot resolve symbol
symbol :method save()
location:class Annuaire
this.save();

-->Elle est où ta méthode save ????

Les erreurs de type cannot resolve symbol signifie que cela n'existe pas !!! Donc c'est que soit la syntaxe est mauvaise soit que la méthode ou la classe n'existe pas ...

@+

[Responsable www.neogamedev.com et Admin CS]
0
guelop80 Messages postés 5 Date d'inscription vendredi 11 juin 2004 Statut Membre Dernière intervention 23 décembre 2004
23 déc. 2004 à 09:07
Jsui un grand debutant en java alors
pouvez vous maider a corriger tous ca sil vou plait.
merci :big)
0
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
23 déc. 2004 à 10:57
:big) Neodante :big)

Je vais plutot te dire comment les retirer tout seul ... cela t'aidera beaucoup plus surtout si tu veux travailler dans l'informatique ...

La première chose que tu vas devoir faire c'est de télécharger la documentation API de java (google API javadoc 1.4) ou alors la consulter en ligne :
http://java.sun.com/j2se/1.4.2/docs/api/

Pour le problème annu.remove() :
Ne mets que la clé de l'objet que tu veux retirer, car la méthode ne prend qu'un seul argument : la clé ! cf javadoc
if(args.length 2 && args[0].compareTo("-d") 0)
{
annu.remove(args[1]); // C'est la clé de l'objet celle du put cf javadoc aussi !
}

Pour les 2 autres problèmes (qui sont exactement le même !), il te faut créer une méthode save() sinon forcément le programme ne peut pas appeler une méthode qui n'existe pas !!!

@+

[Responsable www.neogamedev.com et Admin CS]
0
Rejoignez-nous