Bonjour,

J'essaie de transformer une image JPG qui est sur SDCARD en byte[] pour pouvoir l'envoyer à un webservice.

Voici mon code:
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
18
19
20
21
22
FileInputStream in;
byte[] bytes = null;
try {
	in = new FileInputStream(Environment.getExternalStorageDirectory().getPath() + "/out.jpg");
	ByteArrayOutputStream bos = new ByteArrayOutputStream();
	byte[] b = new byte[1024];
	int bytesRead;
	bytesRead = in.read(b);
	while (bytesRead != -1) {
		bos.write(b, 0, bytesRead);
	}
	bytes = bos.toByteArray();
} catch (FileNotFoundException e) {
	e.printStackTrace();
	bytes = null;
} catch (IOException e) {
	e.printStackTrace();
	bytes = null;
}
if (bytes != null) {
        upload.buff = new String(bytes);
}
J'ai cette erreur "OutOfMemoryError" sur la ligne "bos.write(b, 0, bytesRead);".
Je ne vois pas d'où cela peut bien venir...

Merci,
Drlord.