Wiem ze takich tematów jest sporo w sieci, ale chyba nigdzie nie znalazłem konkretnej odpowiedzi.
Mam taki oto kod:
FileImageInputStream i = new FileImageInputStream(f);
int len = (int) i.length();
if(len == -1) {
//Nigdy nie powinno sie zdarzyc, Jesli sie zdarze to rzucamy wyjatek.
throw new IOException();
}
byte[] buffer = new byte[len];
i.read(buffer);
ImageIcon icon = new ImageIcon(buffer);
Image image = icon.getImage().getScaledInstance(48, 48, Image.SCALE_DEFAULT);
I teraz chcialbym image przeksztalcic na byte[] i wsyac w sposob
oos = new ObjectOutputStream(client.getOutputStream());
oos.writeObject(buffer);
Tak wysylam obrazki przez internet, bo plik moge prosto odczytac do byte[].
No ale teraz chcialbym miniaturki wyslac.
Co prawda moge wyslac obiekt ImageIcon ale to bardzo dlugo idzie.
Pytanie zatem jak przeksztalcic Image to byte[] bez uzywania plikow tymczasowych.
Pozdrawiam