J'essaie de lire un fichier binaire à partir d'un URLConnection. Lorsque je le teste avec un fichier texte, il semble fonctionner correctement, mais pas pour les fichiers binaires. J'utilise le type mime suivant sur le serveur lorsque le fichier est envoyé:Lecture du fichier binaire depuis URLConnection
application/octet-stream
Mais jusqu'à présent, rien ne semble fonctionner. Voici le code que j'utilise pour recevoir le fichier:
file = File.createTempFile("tempfile", ".bin");
file.deleteOnExit();
URL url = new URL("http://somedomain.com/image.gif");
URLConnection connection = url.openConnection();
BufferedReader input = new BufferedReader(new InputStreamReader(connection.getInputStream()));
Writer writer = new OutputStreamWriter(new FileOutputStream(file));
int c;
while((c = input.read()) != -1) {
writer.write((char)c);
}
writer.close();
input.close();
Le test 'n> 0' est inutile. Selon les javadocs, le seul cas où zéro peut être retourné est quand buffer.length est zéro. –
... et dans tous les cas, une écriture de longueur nulle est inoffensive. – EJP
Vous avez sauvé ma journée :) –