Votre question

lire un son//lire ligne aleatoire

Tags :
  • Java
  • Programmation
Dernière réponse : dans Programmation
6 Janvier 2013 12:26:58

Salut à tous, je suis en train de finir mon jeu du pendu et il me reste 2 petits trucs pour le finir
1./ , je souhaite y inserer des sons à jouer (relativement simple), un petit arrhhhhhhhhhhhhhhhhhh quand mon pendu se fait prendre, et un petit jingle quand il est sauvé, donc pour 2 lignes aussi courtes, je n'ai pas besoin des lignes de code de 100 lignes que je trouve sur le net, j'ai donc trouvé ce code qui me semblait relativement simple:

  1. import java.net.URL;
  2. import java.applet.Applet;
  3. import java.applet.AudioClip;
  4.  
  5. public test() {
  6. initComponents();
  7. URL url_1 = test.class.getResource( ".//fatality.wav" );
  8. AudioClip ac1 = Applet.newAudioClip(url_1);
  9. ac1.play();
  10.  
  11. }



Mais au joie, je recois un magnifique message :

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException

(oui oui, le fichier fatality.wav est a l'endroit indiqué directement dans la racine)

2./our mon pendu, j'ai trouvé un dictionnaire sur un fichier texte, je voudrais pouvoir extraire une valeur au hasard mais j'obtiens tjs la meme :/  (le premier mot de mon .txt revient a chaque fois)

  1. public void motinconnu()
  2. {
  3. ligne = (int)(Math.random()*336530);//génere correctement le nombre
  4. System.out.println(ligne);
  5. try {
  6. file = new File("data.txt");
  7. reader = new LineNumberReader(new FileReader(file));
  8. reader.setLineNumber(ligne);
  9. System.out.println(reader.getLineNumber());
  10. MotCache = reader.readLine();
  11. System.out.println(MotCache);
  12. } catch (IOException ex) {}
  13.  
  14. }

ici le soucis est qu'il me renvoit a chaque fois le premier mot de mon dico alors que le random s'execute bien :/  (nb: le 336530 vient du fait que mon fichier texte possede 336530 lignes)

Merci d'avance oour votre aide

Autres pages sur : lire lire ligne aleatoire

a b L Programmation
7 Janvier 2013 12:52:46

Bonjour,
pour le son , je ne sais pas.

mais pour ton autres problème, j'ai simplement lue la doc et j'ai compris pourquoi cela ne marcher pas :
http://docs.oracle.com/javase/1.4.2/docs/api/java/io/Li...
Citation :
Note however, that setLineNumber(int) does not actually change the current position in the stream; it only changes the value that will be returned by getLineNumber().


la solution que je vois c'est de te crée une fonction qui parcours le fichier et te retourn la ligne que tu veux une fois atteinte


Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS