2009-11-08 5 views
0

J'ai un programme Java qui compose automatiquement les numéros de téléphone, il peut générer des sons pour imiter les claviers de téléphone, fonctionne bien pour les appels normaux, mais j'ai rencontré un problème quand il s'agit de carte d'appel. les sons générés par mon programme n'ont pas été acceptés par l'autre extrémité, il a toujours dit que le numéro de la carte est incorrect, donc j'ai fait quelques recherches et trouvé un site qui générerait la séquence sonore entière de la carte pour moi, et je l'ai chose est quand j'ai utilisé la méthode Java suivante pour lire le fichier son * .wav, il n'est toujours pas accepté, et pourtant si je joue le même fichier avec Windows Media Player, l'autre extrémité l'accepterait comme un numéro de carte valide, Pourquoi ? Est-ce que cela signifie que le fichier audio Java Applet a un effet différent de Windows Media Player?Java Applet jouer le fichier audio a un effet différent de Windows Media Player?

void playAudioFile(String File_Name) 
    { 
    try { Applet.newAudioClip(new URL("file:/"+File_Name)).play(); } 
    catch (Exception e) { e.printStackTrace(); } 
    } 

Si oui, comment puis-je, dans mon programme Java, appelez Windows Media Player pour lire le son?

Répondre

2

J'ai réglé le volume sonore, maintenant cela fonctionne bien.

0

Je ne peux pas vous dire pourquoi exactement vous voyez cet effet, mais je peux vous dire comment lancer Windows Media Player à partir de votre programme.

En supposant Windows XP et Windows Media Player 11:

String myCommand = "\"C:\\Program Files\\Windows Media Player\\wmplayer\\\" /open \"" + File_Name + "\"" 
Runtime.getRuntime().exec(myCommand); 

Cela lancera Windows Media Player et faire lire le fichier nom_fichier des points à (chemin complet serait probablement le plus sûr). Si Media Player est déjà ouvert, cela fonctionnera toujours :) Tout fichier en cours de lecture sera interrompu.

J'espère que cela aide.

+0

N'utilisez-vous pas les objets de bureau pour démarrer le fichier .wav par rapport à la sémantique spécifique au système d'exploitation? – Xailor

+0

Certainement, si c'est possible de le faire. Frank a demandé un moyen d'appeler Windows Media Player pour lire son fichier son. Cela me semble assez spécifique à l'OS. J'avoue que ce n'est pas la meilleure façon de résoudre ce problème, mais c'est néanmoins une solution. –

+0

Je l'ai essayé sous Win Vista, ne fonctionnait pas, aucune fenêtre lancée pour Windows Media Player et aucun son n'a été joué, j'ai aussi essayé ceci: "\" C: \\ Program Files \\ Windows Media Player \\ wmplayer. exe \\\ "/ open \" "+ nom_fichier +" \ "" Vista peut-il être différent de XP? – Frank