Bonjour,
J'essaie de récupérer un fichier excel en utilisant l'api HttpClient. Seulement, lorsque je récupère le fichier, celui-ci a des caractères qui ne correspondent pas à l'original, si bien qu'Excel me dit que le fichier est endommagé et n'affiche pas correctement le fichier.
Certains caractères sont remplacés par des '?' lorsque je récpère le fichier.
Voici le code :
HttpClient client = new HttpClient();
String login = "login";
String password = "password";
client.getState().setCredentials(new AuthScope("www.toto.com", 443, "realm"),
new UsernamePasswordCredentials(login, password)
);
GetMethod get = new GetMethod("https://www.toto.com/docs/Fiche%20Technique.xls");
get.setDoAuthentication( true );
try {
// execute the GET
int status = client.executeMethod( get );
// print the status and response
log.debug("status = " + status);
File excelFile = new File("resources/test.xls");
FileOutputStream fos = new FileOutputStream(excelFile);
// Originale file
byte[] bytes = get.getResponseBodyAsString().getBytes();
for (int i = 0; i < bytes.length; i++)
fos.write(bytes[i]);
fos.close();
} catch(IOException exc) {
System.out.println("Error IOException = " + exc.getMessage());
}
finally {
// release any connection resources used by the method
get.releaseConnection();
}
Quelqu'un aurait il une idée pour éviter ce problème.
Sinon existe-t-il d'autres API qui permettent de récupérer un fichier en utilisant une authentification
Merci d'avance
[:D]