Accueil > > > RANDOMACCESSFILE ET BUFFEREDREADER, ECRIRE, LIRE, MODIFIER ET RECHERCHER DANS UN FICHIER
RANDOMACCESSFILE ET BUFFEREDREADER, ECRIRE, LIRE, MODIFIER ET RECHERCHER DANS UN FICHIER
Information sur la source
Description
Source
/*********************************************************
Nom du programme : ExerciceFichier.java
Auteur : Zufferey Matthieu
Date : 30.08.2002
Description : C'est un exercice sur les fichiers
Préconditions : Aucune
/********************************************************/
import java.io.* ;
import java.util.* ;
public class Exercice
{
public static void main(String[] args) throws IOException
{
File fichier = new File("employe.txt") ;
RandomAccessFile donnee = new RandomAccessFile(fichier, "rw") ;
int numero = 0 ;
int choix = 0 ;
int compteur = 1 ;
double moyenne = 0 ;
double newSalaire = 0 ;
boolean sortie = false ;
donnee.writeInt(compteur) ;
donnee.writeChar(' ') ;
donnee.writeUTF("Patolachi") ;
donnee.writeChar(' ') ;
donnee.writeUTF("Marcel") ;
donnee.writeChar(' ') ;
donnee.writeDouble(5500.00) ;
donnee.writeChar('\n') ;
BufferedReader in = new BufferedReader(new InputStreamReader(System.in)) ;
do
{
do
{
try
{
System.out.println("Menu") ;
System.out.println("====\n") ;
System.out.println("1. Afficher les donnees") ;
System.out.println("2. Calculer le salaire moyens") ;
System.out.println("3. Ajouter un employe") ;
System.out.println("4. Modifier le salaire d'un employe") ;
System.out.println("5. Quitter") ;
choix = Integer.parseInt(in.readLine()) ;
}
catch(NumberFormatException e)
{}
}
while(choix < 1 || choix > 5) ;
switch(choix)
{
case 1 :
{
System.out.println() ;
donnee.seek(0) ;
for (int i = 0 ; i < compteur ; i++)
{
try
{
System.out.print(donnee.readInt()) ;
System.out.print(donnee.readChar()) ;
System.out.print(donnee.readUTF()) ;
System.out.print(donnee.readChar()) ;
System.out.print(donnee.readUTF()) ;
System.out.print(donnee.readChar()) ;
System.out.print(donnee.readDouble()) ;
System.out.print(donnee.readChar()) ;
}
catch(EOFException e)
{}
}
System.out.println() ;
}
break ;
case 2 :
{
System.out.println() ;
moyenne = 0 ;
donnee.seek(0) ;
for (int i = 0 ; i < compteur ; i++)
{
try
{
donnee.readInt() ;
donnee.readChar() ;
donnee.readUTF();
donnee.readChar() ;
donnee.readUTF() ;
donnee.readChar() ;
moyenne += donnee.readDouble() ;
donnee.readChar() ;
}
catch(EOFException e)
{}
}
System.out.println("La moyenne des salaires est de : " + (moyenne/compteur)) ;
System.out.println() ;
}
break ;
case 3 :
{
System.out.println() ;
donnee.seek(donnee.length()) ;
compteur += 1 ;
try
{
donnee.writeInt(compteur) ;
donnee.writeChar(' ') ;
System.out.println("Entrez le nom du nouvel employe") ;
donnee.writeUTF(in.readLine()) ;
donnee.writeChar(' ') ;
System.out.println("Entrez le prenom du nouvel employe") ;
donnee.writeUTF(in.readLine()) ;
donnee.writeChar(' ') ;
System.out.println("Entrez le salaire du nouvel employe") ;
donnee.writeDouble(Double.parseDouble(in.readLine())) ;
donnee.writeChar('\n') ;
}
catch(EOFException e)
{}
System.out.println() ;
}
break ;
case 4 :
{
System.out.println() ;
donnee.seek(0) ;
do
{
System.out.println("Entrez le numero de l'employe a qui vous voulez change le salaire") ;
numero = Integer.parseInt(in.readLine()) ;
}
while(numero < 0 || numero > compteur) ;
System.out.println("Entrez le montant du nouveau salaire") ;
newSalaire = Double.parseDouble(in.readLine()) ;
int numDonnee = 0 ;
try
{
for (int i = 0 ; i < compteur ; i++)
{
numDonnee = donnee.readInt() ;
if(numero == numDonnee)
{
donnee.readChar() ;
donnee.readUTF() ;
donnee.readChar();
donnee.readUTF() ;
donnee.readChar() ;
donnee.writeDouble(newSalaire) ;
donnee.readChar() ;
}
else
{
donnee.readChar() ;
donnee.readUTF() ;
donnee.readChar();
donnee.readUTF() ;
donnee.readChar() ;
donnee.readDouble() ;
donnee.readChar() ;
}
}
}
catch(EOFException e)
{}
System.out.println() ;
}
break ;
case 5 :
{
System.out.println() ;
sortie = true ;
}
break ;
}
}
while(sortie != true) ;
System.exit(0) ;
}
}
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
lire et écrire dans un fichier texte [ par elmoudene ]
bonjour, tout d'abors je suis qu'un débutant en JAVA, et j'aimerai bien que vous m'aider a faire un petit programme qui me permet d'ecrire et lire dan
lire et écrire une matrice ligne par ligne dans un fichier texte en java [ par hibaw ]
bonjour a tous,je cherche comment dans un code_source je dois écrire (c à dire enregistrer) une matrice de réel exemple : mat =[ 0 1.2 3 4;
La Classe Scanner [ par SirShinobi ]
Salut,J'ai lu les anciens sujets et je n'ai pas trouvé une réponse clair à ma question.Je veux savoir comment utiliser la classe scanner :-Pour lire u
Math.random() en java [ par nicegirle ]
bnjr , svp je suis entrain de developper une applet ,contenant un cerle qui se deplace dans mon applet tout en changeant le rayon, le problème c est
lire un fichier texte à partire d'une ligne précice . [ par mermad ]
Bonjour tout le monde,je sais comment lire un fichier texte en java mais je ne sais pas comment lire à partir d'une ligne précise, la dixième ligne pa
Lire le contenu d'un pdf (contenant un code barre) avec itext [ par byob ]
Bonjour, j'ai utilisé la lib d'itext pour creer un pdf avec un code barre : Document document = this.barCode.getDocument(); PdfWriter write
lire et ecrire dans fichier texte en java [ par saif87 ]
Bonjour,je veut une aide a propos des fichier en java je veut sauvegarder mon travail dans un fichierexemple l'utilisateur entre le nom ,prénom,age...
lire ligne par ligne le contenu d'un JTextArea [ par bilal86 ]
Bonjour j'ai quelque questions , comme le titre indiqué, quand j'ai fait la recherche sur internet ils disent que pour récupérer le contenu d'une seul
Départ d'une application [ par chris081 ]
Bonjour Je suis relativement nouveau comparé à ce que j'ai pu lire comme réponses sur ce site. Je voudrais savoir si c'est possible de faire une appi
|
Derniers Blogs
ZUNE : NOUVELLE VERSION DU ZUNE SOFTWARE - V 4.2ZUNE : NOUVELLE VERSION DU ZUNE SOFTWARE - V 4.2 par ROMELARD Fabrice
Avec la dernière génération du lecteur MP3 de Microsoft, le ZUNE HD, Microsoft a publié une nouvelle version du logiciel pour PC. Ainsi, je me suis décidé à installer celle-ci sur mon Tablet PC ACER, comme toujours le logiciel est donc tél...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice L'INTERFACE NATURELLE DE WINDOWS PHONE 7 SERIESL'INTERFACE NATURELLE DE WINDOWS PHONE 7 SERIES par odewit
La tendance est aux interfaces naturelles (NUI), et le keynote de Bill Buxton au MIX l'a bien souligné.
La charte graphique et ergonomique de Windows Phone 7 a donc été entièrement repensée en vue d'obtenir un maximum d'efficacité sur ce point. En re...
Cliquez pour lire la suite de l'article par odewit COMMENT MAPPER UNE VUE SQL SUR UNE COLLECTION DE COMPLEX TYPE?COMMENT MAPPER UNE VUE SQL SUR UNE COLLECTION DE COMPLEX TYPE? par Matthieu MEZIL
Avec EF, les vues doivent être mappées sur des entity types. Le problème c'est que les entity types doivent avoir une clé. Avec EF, nous avons les complex type qui n'ont pas de clé mais les vues ne peuvent pas être mappées dessus. Avec EF4, il est possibl...
Cliquez pour lire la suite de l'article par Matthieu MEZIL
Logiciels
Academy System (10.9.4.0)ACADEMY SYSTEM (10.9.4.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods
|