Bonjour,
Si je n'étais pas équilibré (enfin je crois) je crois que je déprimerais car je ne comprends pas pourquoi le code suivant marche quelquefois (lorsque j'utilise la sélection d'un fichier) et non (lorsque je code en dur le nom du fichier.
Voici le code. je me suis inspiré d'un exemple trouvé sur un forum en Anglais.
Lorsque j'utilise les instructions :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 import java.io.File; import javax.sound.sampled.AudioInputStream; import javax.sound.sampled.AudioSystem; import javax.sound.sampled.Clip; import javax.sound.sampled.Line; import javax.swing.JDialog; import javax.swing.JFileChooser; public class CoreJavaSound { File soundFile; String filename = "D:\\Gege\\Ring05.wav"; JDialog playingDialog; Clip clip; public static void main(String[] args) throws Exception { new CoreJavaSound(); } public CoreJavaSound() throws Exception { JFileChooser chooser = new JFileChooser("D:\\Gege"); chooser.showOpenDialog(null); soundFile = chooser.getSelectedFile(); // soundFile = new File(filename); System.out.println("J'écoute : " + soundFile.getName()); Line.Info linfo = new Line.Info(Clip.class); Line line = AudioSystem.getLine(linfo); clip = (Clip) line; AudioInputStream ais = AudioSystem.getAudioInputStream(soundFile); clip.open(ais); clip.start(); } }
JFileChooser chooser = new JFileChooser("D:\\Gege");
chooser.showOpenDialog(null);
soundFile = chooser.getSelectedFile(); soundFile est une occurrence de la classe "File".
J'entends bien la sonnerie (j'ai pris un fichier wav au hasard dans le répertoire Windows que j'ai copié dans le répertoire D:\Gege ).
D'ailleurs cette sonnerie s'arrête avant la fin, mais c'est sans doute un autre problème qu'il faudra que je comprenne. Si quelqu'un a une idée, merci de l'exprimer. Mais pour l'instant ce n'est pas mon souci numéro 1.
Par contre si je remplace les instructions précédentes par
soundFile = new File(filename);
le programme s’exécute bien mais aucun son ne sort. Évidement ce fichier existe, car autrement j'obtiendrais un message d’erreur de type "fichier non trouvé".
Merci d'avance pour m'aider à comprendre.
Gégé
Partager