Depandance entre 2 classe java
Résolu/Fermé
pedro0077
Messages postés
4
Date d'inscription
lundi 2 août 2010
Statut
Membre
Dernière intervention
6 août 2011
-
2 août 2010 à 14:28
bilbokey Messages postés 114 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 14 avril 2014 - 2 août 2010 à 17:03
bilbokey Messages postés 114 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 14 avril 2014 - 2 août 2010 à 17:03
A voir également:
- Depandance entre 2 classe java
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Java décompiler - Télécharger - Langages
- Java runtime - Télécharger - Langages
3 réponses
bilbokey
Messages postés
114
Date d'inscription
mercredi 14 avril 2010
Statut
Membre
Dernière intervention
14 avril 2014
11
2 août 2010 à 15:03
2 août 2010 à 15:03
Salut,
Il faut mettre une variable dans la classe(en generale on la met en private en java pour eviter son acces n'importe comment et on ajoute un getter(methode pour la recuperer)):
graph:
lecture:
Il faut mettre une variable dans la classe(en generale on la met en private en java pour eviter son acces n'importe comment et on ajoute un getter(methode pour la recuperer)):
graph:
import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class graph extends JFrame { public graph () {} private String lien_fichier=""; public String getlien_fichier() { return lien_fichier; } public void parcourir() { // Crée un panneau JPanel contenuFenêtre = new JPanel(); // Affecte un gestionnaire de présentation à ce panneau GridLayout disposition = new GridLayout(4,2); contenuFenêtre.setLayout(disposition); // Crée les contrôles en mémoire JButton button = new JButton("parcourir"); contenuFenêtre.add(button); button.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ JFileChooser chooser = new JFileChooser(); int returnVal = chooser.showOpenDialog(chooser); if(returnVal == JFileChooser.APPROVE_OPTION) { lien_fichier = chooser.getSelectedFile().getPath(); System.out.println("vous voulez ouvrir le fichier : " + chooser.getSelectedFile().getName()); System.out.println(lien_fichier ); } } } ); // Crée le cadre et y ajoute le panneau JFrame cadre = new JFrame("Boutton parcourir"); cadre.setContentPane(contenuFenêtre); // Affecte ses dimensions à la fenêtre et la rend visible cadre.setSize(400,100); cadre.setVisible(true); } }
lecture:
public class lecture extends graph { public static void main(String[] args){ graph badr= new graph(); badr.parcourir(); String chaine=""; String fichier =badr.getlien_fichier(); //lecture du fichier texte try{ InputStream ips=new FileInputStream(fichier); InputStreamReader ipsr=new InputStreamReader(ips); BufferedReader br=new BufferedReader(ipsr); String ligne; while ((ligne=br.readLine())!=null){ System.out.println(ligne); chaine+=ligne+"\n"; } br.close(); } catch (Exception e){ System.out.println(e.toString()); }}}
pedro0077
Messages postés
4
Date d'inscription
lundi 2 août 2010
Statut
Membre
Dernière intervention
6 août 2011
2 août 2010 à 16:36
2 août 2010 à 16:36
merci pour votre aide
c'est la meme solution que j'ai essayer mais j'ai une exeption
merci
c'est la meme solution que j'ai essayer mais j'ai une exeption
java.io.FileNotFoundException:
merci
bilbokey
Messages postés
114
Date d'inscription
mercredi 14 avril 2010
Statut
Membre
Dernière intervention
14 avril 2014
11
2 août 2010 à 17:03
2 août 2010 à 17:03
ba c'est normale. Il cherche le lien du fichier alors qu'au debut dans swing le nom du fichier est null. soit tu remplace la fonction getlien_fichier() par :
public String getlien_fichier() {
while (lien_fichier=="") {
}
return lien_fichier;
}
Mais c'est un peu a l'arrache, soit dans ton main tu fais:
public static void main(String[] args) throws InterruptedException{
graph badr= new graph();
badr.parcourir();
String chaine="";
String fichier2 ="";
//lecture du fichier texte
while (true) {
String fichier =badr.getlien_fichier();
if (!fichier.equals(fichier2)) {
fichier2=fichier;
try{
InputStream ips=new FileInputStream(fichier);
InputStreamReader ipsr=new InputStreamReader(ips);
BufferedReader br=new BufferedReader(ipsr);
String ligne;
while ((ligne=br.readLine())!=null){
System.out.println(ligne);
chaine+=ligne+"\n";
}
br.close();
}
catch (Exception e){
System.out.println("hello");
System.out.println(e.toString());
}
}
Thread.currentThread();
Thread.sleep(2000);
}
}
}
Ou tu peux inover. le truc il faut pas que quand il ouvre le fichier, celui-ci soit a nulle. Ou le mieu serait de faire faire implementer graph le patern observable si c'est vraiment important:
https://openclassrooms.com/fr/courses
et tu check quand la variable lien_fichier est modifiee
public String getlien_fichier() {
while (lien_fichier=="") {
}
return lien_fichier;
}
Mais c'est un peu a l'arrache, soit dans ton main tu fais:
public static void main(String[] args) throws InterruptedException{
graph badr= new graph();
badr.parcourir();
String chaine="";
String fichier2 ="";
//lecture du fichier texte
while (true) {
String fichier =badr.getlien_fichier();
if (!fichier.equals(fichier2)) {
fichier2=fichier;
try{
InputStream ips=new FileInputStream(fichier);
InputStreamReader ipsr=new InputStreamReader(ips);
BufferedReader br=new BufferedReader(ipsr);
String ligne;
while ((ligne=br.readLine())!=null){
System.out.println(ligne);
chaine+=ligne+"\n";
}
br.close();
}
catch (Exception e){
System.out.println("hello");
System.out.println(e.toString());
}
}
Thread.currentThread();
Thread.sleep(2000);
}
}
}
Ou tu peux inover. le truc il faut pas que quand il ouvre le fichier, celui-ci soit a nulle. Ou le mieu serait de faire faire implementer graph le patern observable si c'est vraiment important:
https://openclassrooms.com/fr/courses
et tu check quand la variable lien_fichier est modifiee