salut
je dois télécharger un fichier mp3 depuis une applet, ce fichier se trouvant sur le serveur web d'où l'applet est téléchargée par le navigateur. Donc normalement pas de probleme de sécurité. De fait, le fichier est bien trouvé et le transfert des données est commencé. Par contre, le InputStream que j'obtiens ne me retourne qu'une petite partie du fichier avant d'etre épuisé ?!
En gros, mon fichier mp3 fait environ 1Mo, et je n'en récupere que 30Ko !
voici le code chargé de récupérer le fichier, sous forme d'un byte[]
filePath est le nom du fichier, fileSize sa taille (donnés à l'applet par les paramètres du tag <APPLET>)
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 private void loadSoundFile(String filePath, int fileSize) throws MalformedURLException, IOException{ byte[] playBackData; // pour stocker le fichier URL url = new URL(getCodeBase().toString() + filePath); InputStream inputStream = url.openStream(); if (inputStream != null){ playBackData = new byte[fileSize]; // compter les données lues int count = inputStream.read(playBackData); // ici, count vaut un nombre largement inférieur à la taille du fichier !!! // on place les données dans un attribut de la classe this.playBackData = playBackData; } }
Partager