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
- Jdownloader 2 - Télécharger - Téléchargement & Transfert
- Jeux java itel ✓ - Forum Jeux vidéo
- Java runtime - Télécharger - Langages
- 2 comptes whatsapp - Guide
- Java apk - 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