Pb BufferedInputStream/BufferedOutputStream (pièce jointe avec JavaMail)
urikane
Messages postés16Date d'inscriptionlundi 15 décembre 2003StatutMembreDernière intervention24 août 2004
-
23 août 2004 à 14:22
cs_Guillaume1er
Messages postés8Date d'inscriptionmardi 17 décembre 2002StatutMembreDernière intervention 3 juin 2006
-
4 mars 2005 à 13:45
Bonjour à tous. Voici mon problème.
Je suis en train de faire une appli qui doit télécharger les pièces jointes dans une boîte mail.
J'utilise l'API JavaMail
Voici le code de la méthode qui enregistre les pièces jointes sur le disque dur:
Le seul moyen d'accéder à la pièce jointe est un InputStream (obtenu à partir d'un Part -> cf JavaMail)
Le problème est avec certaine pièce jointe, pas toute (en fait c'est aléatoire :sad) ) j'ai l'exception suivante:
java.io.IOException: Error in encoded stream: needed 4 valid base64 characters but only got 3 before EOF, the valid characters were: "ujB"
Dans le message d'erreur, le nombre de caractère valide n'est pas forcement 3; ça dépend desfois c'est 2 ou 1
J'ai essayé à la place de InputStream d'utiliser un FileInputStream avec les fichiers qui posaient problème (les fichiers étant sur mon déjà sur mon disque dur puisque on ne peut pas obtenir de FileInputStream à partir quand les fichiers sont encore dans la boîte mail).
En fait j'ai juste fait une copie d'un encroit à un autre de mon disque. Mais là ça marche :((((
Donc le pb semble être le InputStream mais je n'ai que ça (enfin j'ai bien regardé la javadoc de l'API JavaMail et Activation mais je n'ai rien trouvé d'autre, peut-être que j'ai mal cherché)
Si quelqu'un à une idée... en plus il faut que j'ai fini ça ce soir :(((
Please help meeeeee :sad)
ps: dsl pour le code je n'arrive pas à l'afficher clairement