Probleme d'ecriture dans un fichier a partir d'un objet Vector

cs_Tmac01 Messages postés 16 Date d'inscription vendredi 2 juin 2006 Statut Membre Dernière intervention 6 juin 2006 - 2 juin 2006 à 12:57
sheorogath Messages postés 2448 Date d'inscription samedi 21 février 2004 Statut Modérateur Dernière intervention 29 janvier 2010 - 3 juin 2006 à 14:19
      T-Mac ------> The Best
      See you There :

J'ai un exam de passage et :

Je maitrise pas bien les mises a jour (ecriture , lecture ) dans un fichier sequential à partir d'un objet Vector .
Es ce que vous pouvez me donnez une application ou un programme simple qui peut m'aider à resoudre ce probleme .
Et vite SVP .J'attend ....

32 réponses

HSylvio Messages postés 116 Date d'inscription jeudi 22 juillet 2004 Statut Membre Dernière intervention 14 juin 2012
2 juin 2006 à 13:29
"
Et vite SVP .J'attend ...."

Alors leBest on a besoin d'aide???
0
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
2 juin 2006 à 13:35
Salut,


http://www.javafr.com/reglement.aspx


si tu as des souci sur un code que tu as fais oki on peut aider mais
personne ne fera le boulot pour toi, faut pas rêver non plus !

WORA
0
cs_Tmac01 Messages postés 16 Date d'inscription vendredi 2 juin 2006 Statut Membre Dernière intervention 6 juin 2006
2 juin 2006 à 13:51
non c pa ca si tu veu je te montre le programme,mai je conné pa comment faire pour enregistrer dans un fichier .ALOR TU M'aide stp
--------------------------------------------
VOILA C LA CLASS VECTORSOLDE(LES MISE A JOUR DANS UN OBJET VECTOR) :


import java.util.*;
import java.io.*;
public class vectsolde implements Serializable
{
Vector vec=new Vector();
public void ajouterE(soldeExtents d)
{
vec.addElement(d);
}
public void afficherE()
{
//System.out.println("Numero"+"\t\t"+"Nom"+"\t\t"+"Prenom"+"\t\t"+"Solde");
int u;
for(u=0;u<vec.size();u++)
{
soldeExtents d = (soldeExtents)vec.elementAt(u);
System.out.println(d.num()+"\t\t"+d.nom()+"\t\t"+d.prenom()+"\t\t"+d.solde());
}
}
public void afficherPN(int num)
{

int j;
boolean h;
for(j=0;j<vec.size();j++)
{
soldeExtents d=(soldeExtents)vec.elementAt(j);
if(d.num()==num)
{
h=true;
System.out.println("Numero"+"\t\t"+"Nom"+"\t\t"+"Prenom"+"\t\t"+"Solde");
System.out.println(d.num()+"\t\t"+d.nom()+"\t\t"+d.prenom()+"\t\t"+d.solde());break;
}
else
if(d.num()!=num | d.num()==0){
h=false;
System.err.println("il y a aucun client avec ce numero .");}
}

}
public void augmenterS(int num,double sld)
{

int j;
boolean h;
for(j=0;j<vec.size();j++)
{
soldeExtents d=(soldeExtents)vec.elementAt(j);
if( d.num()==num)
{
h=true;
d.augS(sld);
System.out.println("FELICITATION , le salaire a été crediter avec succé .");break;
//System.out.println("Numero"+"\t\t"+"Nom"+"\t\t"+"Prenom"+"\t\t"+"Solde");
//System.out.println(d.num()+"\t\t"+d.nom()+"\t\t"+d.prenom()+"\t\t"+d.solde());break;
}
else
h=false;
System.err.println("il y a aucun client avec ce numero .");
}

}
public void diminuerS(int num,double sld)
{

int j;
boolean h;
for(j=0;j<vec.size();j++)
{
soldeExtents d=(soldeExtents)vec.elementAt(j);
if( d.num()==num)
{
h=true;
d.dimS(sld);
System.out.println("FELICITATION , le salaire a été debiter avec succé .");break;
//System.out.println("Numero"+"\t\t"+"Nom"+"\t\t"+"Prenom"+"\t\t"+"Solde");
//System.out.println(d.num()+"\t\t"+d.nom()+"\t\t"+d.prenom()+"\t\t"+d.solde());break;
}
else
h=false;
System.err.println("il y a aucun client avec ce numero .");
}
}
public void MAJ(int num,double ca,double frs)
{
int i;
boolean h;
for(i=0;i<=vec.size();i++)
{
if(vec.size()==0){System.out.println("il n'y a aucun client enregistrer en ce moment .");}


else
{
soldeExtents s=(soldeExtents)vec.elementAt(i);
if (s.numero==num)
{
h=true;
s.maj(ca,frs);break;
}
else
h=false;System.err.println("ce numero de client est introuvable .");break;
}
}
}
public int testNumero()
{
return vec.size();
}
public void supE(int num)
{
int m;
boolean bok;
for(m=0;m<=vec.size();m++)
{
soldeExtents n=(soldeExtents)vec.elementAt(m);
if(n.numero==num)
{
bok=true;
vec.removeElementAt(m);
System.out.println("Client ecraser , supprimer , deleté , boom pour lui . HihiHI ....");
break;
}
else
{
bok=false;
System.out.println("Numero client introuvable .");break;
}
}
}
public void sauver() throws FileNotFoundException, IOException
{
try{
ObjectOutputStream flot = new ObjectOutputStream(new FileOutputStream("younes.txt")) ;
int h;
for(h=0;h<vec.size();h++)
{
//solde sld=(solde)vec.elementAt(h);
flot.writeObject(vec);
}

System.out.println("fichier sauver .");
flot.close();
}catch (Exception e){
System.out.println(" erreur d'ecriture .");
}
}
}

---------------------------------
CELLE LA C LA CLASSE TEST :


import java.io.*;
import java.io.Serializable;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.io.SerializablePermission;
import biputil2.*;
public class testsolde implements Serializable
{
static SequentialFile fs=new SequentialFile();
static vectsolde vec=new vectsolde();

/**
* @param args
* @throws IOException
* @throws NumberFormatException
*/
public static void main(String[] args) throws NumberFormatException, IOException {
// TODO Auto-generated method stub
BufferedReader f=new BufferedReader(new InputStreamReader(System.in));


String rep="oui";
while (rep.equals("oui"))
{
System.out.println("\t\t\t"+"---- MENU ----");
System.out.println("\t\t"+"---- 1 saisie du client ----");
System.out.println("\t\t"+"---- 2 affichage de tous client ----");
System.out.println("\t\t"+"---- 3 affichage d'un client par numero ----");
System.out.println("\t\t"+"---- 4 augmenter le salaire d'un representant ----");
System.out.println("\t\t"+"---- 5 diminuer le salaire d'un representant ----");
System.out.println("\t\t"+"---- 6 Le chiffre d'affaire et les frais depenser par un client ----");
System.out.println("\t\t"+"---- 7 supprimer un client ----");
System.out.println("\t\t"+"---- 8 Enregistrer tous dans un fichier ----");
System.out.println("\n\t\t"+"---- Entrez votre choix ----");
int choix=Integer.parseInt(f.readLine());
switch (choix)
{
case 1:
{System.out.println("Combien de client voulez vous saisir ?");
int cb=Integer.parseInt(f.readLine());
int y;
for(y=0;y<cb;y++)
{
System.out.println("entrer le numero :");
int num=Integer.parseInt(f.readLine());
System.out.println("entrer le nom :");
String nom=f.readLine();
System.out.println("entrer le prenom :");
String prenom=f.readLine();
System.out.println("entrer le solde :");
double solde=Double.parseDouble(f.readLine());
soldeExtents d = new soldeExtents(num,nom,prenom,solde,0,0);
vec.ajouterE(d);
}
break;
}
case 2:
System.out.println("Numero"+"\t\t"+"Nom"+"\t\t"+"Prenom"+"\t\t"+"Solde");
vec.afficherE();
break;
case 3:
System.out.println("entrer le numero :");
int num=Integer.parseInt(f.readLine());
vec.afficherPN(num);break;
case 4:
System.out.println("entrer le numero :");
int num1=Integer.parseInt(f.readLine());
if (vec.testNumero()==0){System.out.println("il n'y a aucun enregistrement de n'importe client .");break;}
System.out.println("entrer le credit :");
double sld1=Double.parseDouble(f.readLine());
vec.augmenterS(num1,sld1);break;
case 5:
System.out.println("entrer le numero :");
int num2=Integer.parseInt(f.readLine());
if (vec.testNumero()==0){System.out.println("il n'y a aucun enregistrement de n'importe client .");break;}
System.out.println("entrer le debit :");
double sld2=Double.parseDouble(f.readLine());
vec.diminuerS(num2,sld2);break;
case 6:
System.out.println("entrer le numero :");
int num3=Integer.parseInt(f.readLine());
if (vec.testNumero()==0){System.out.println("il n'y a aucun enregistrement de n'importe client .");break;}
System.out.println("entrer le chiffre d'affaire à ajouter :");
double ca=Double.parseDouble(f.readLine());
System.out.println("entrer les frais depenser par le client :");
double frs=Double.parseDouble(f.readLine());
vec.MAJ(num3,ca,frs);break;
case 7:
System.out.println("entrer le numero :");
int num4=Integer.parseInt(f.readLine());
if (vec.testNumero()==0){System.out.println("il n'y a aucun enregistrement de n'importe client .");break;}
vec.supE(num4);break;
case 8:
vec.sauver();break;
default :
System.out.println("entrer 1 ou 2 ou 3 ou 4 ou 5 ou 6 ou 7 . MERCI ");break;
}
System.out.println("Voulez vous continuer ? (o/n)");
String reponse=f.readLine();
if(reponse.equals("n")){rep="non";System.out.println("Vous etes sortis du programme .A bientot !!!");break;}
else
if(reponse.equals("o")){};
}
}
}
0
HSylvio Messages postés 116 Date d'inscription jeudi 22 juillet 2004 Statut Membre Dernière intervention 14 juin 2012
2 juin 2006 à 15:18
Hey; pas mal !!!
Enregistrer dans un fichier:
java.lang.Object
java.io.InputStream
java.io.FileInputStream

 Pour enregistrer des objets créés par toi faut les rendre serializable
Si tu enregistres depuis des threads dans un meme fichier faudra synchroniser les acces fichier (lect/ecriture)

D'autres questions, Mr "TU VAS M'AIDER VITE !" ???
0

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

Posez votre question
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
2 juin 2006 à 15:25
Perso j'aide pas les mal-poli surtout demandé comme ca, ca donne envie de tout sauf d'aider

WORA
0
HSylvio Messages postés 116 Date d'inscription jeudi 22 juillet 2004 Statut Membre Dernière intervention 14 juin 2012
2 juin 2006 à 15:31
ca va j'sui ai pas mis rien du tout d'code; si vraiment c'etait urgent i va juste y passer le w.e., sinon ben ca va lui prendre la tete 3-4 jours... moins de temps qu'il aurai fallu en demandant gentilment à une cahuete Running Anywhere...

D'avance bon w.e., papa de moi :)
0
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
2 juin 2006 à 16:10
Lol merci à toi aussi bon w.e

WORA
0
cs_Tmac01 Messages postés 16 Date d'inscription vendredi 2 juin 2006 Statut Membre Dernière intervention 6 juin 2006
2 juin 2006 à 16:12
comment mal poli , je te demande de m'aider c tous .
0
cs_Tmac01 Messages postés 16 Date d'inscription vendredi 2 juin 2006 Statut Membre Dernière intervention 6 juin 2006
2 juin 2006 à 16:14
merci bien
mais tu pouré pa me donné un exemple ecri stp
0
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
2 juin 2006 à 17:47
nan tu demande pas de l'aide tu exige de l'aide de plus sortir <gras>"Et vite SVP .J'attend ...." </gras>c'est relativement mal-poli

WORA
0
sheorogath Messages postés 2448 Date d'inscription samedi 21 février 2004 Statut Modérateur Dernière intervention 29 janvier 2010 17
2 juin 2006 à 19:50
je suis daccord
je n'etais pas la avant aujourd'hui pour voir quand tu as poster ce mssage
mais je te rappel qu'on est tous des benevoles et on code pour le plaisir de plus on a aussi pas que ca a faire
donc la moindre des chose c'est d'etre poli
de plus quand on poste un code on met les lignes a problemes et non tous le programme
si ton prog fait trois mille lignes tu les mettrais pas toutes si?
mais bon je ne fais que rabacher le reglement
je ne lock pas cette fois ci

repose ta question poliement , clairement avec le morceaux de code a probleme et les message d'erreurs

j'oubliais je n'ecris pas tres bien j'oublie parfois des lettres (par megarde) je fais des fautes mais tu ne me verras quasiment jamais ecrire en style sms

"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"
0
cs_Tmac01 Messages postés 16 Date d'inscription vendredi 2 juin 2006 Statut Membre Dernière intervention 6 juin 2006
2 juin 2006 à 20:19
OK , pardon vraiment ss desolé
je l'ai pa fai expré
alors es ce ke tu peu m'aider ?
0
sheorogath Messages postés 2448 Date d'inscription samedi 21 février 2004 Statut Modérateur Dernière intervention 29 janvier 2010 17
2 juin 2006 à 20:21
est ce que tu as un messge d'erreur ?

"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"
0
cs_Tmac01 Messages postés 16 Date d'inscription vendredi 2 juin 2006 Statut Membre Dernière intervention 6 juin 2006
2 juin 2006 à 20:23
wé , erreur d'ecriture
0
sheorogath Messages postés 2448 Date d'inscription samedi 21 février 2004 Statut Modérateur Dernière intervention 29 janvier 2010 17
2 juin 2006 à 20:24
copie le message d'erreur stp

"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"
0
cs_Tmac01 Messages postés 16 Date d'inscription vendredi 2 juin 2006 Statut Membre Dernière intervention 6 juin 2006
3 juin 2006 à 00:46
wé voila le message d'erreur ===>
Erreur Entier java.lang.NumberFormatException: For input string: "1
0
sheorogath Messages postés 2448 Date d'inscription samedi 21 février 2004 Statut Modérateur Dernière intervention 29 janvier 2010 17
3 juin 2006 à 00:50
ptdr t'aurais du comencer par la
c'est pas une erreur de'ecriture c'est une erreur de conversion de String en int

"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"
0
sheorogath Messages postés 2448 Date d'inscription samedi 21 février 2004 Statut Modérateur Dernière intervention 29 janvier 2010 17
3 juin 2006 à 00:52
fait un trim() des String que tu converti :
int nb = Integer.parseInput(monflux.readLine().trim());

"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"
0
cs_Tmac01 Messages postés 16 Date d'inscription vendredi 2 juin 2006 Statut Membre Dernière intervention 6 juin 2006
3 juin 2006 à 01:07
es ce qu'on peut mettre dans une variable String les elements que contient un objet vecteur ?
0
cs_Tmac01 Messages postés 16 Date d'inscription vendredi 2 juin 2006 Statut Membre Dernière intervention 6 juin 2006
3 juin 2006 à 01:20
ca marché le truc que tu ma donné
MERCI BCP .
stp
ca veu dire quoi toUpperCase() ?
0
Rejoignez-nous