Bunu nasıl yapacağımı bilmiyorum. Herhangi bir yardım,InputStream (Resim) ile ByteArrayInputStream Dönüştürme
cevap
Takdir edilecektir. Giriş akışından okuyun ve bir ByteArrayOutputStream'a yazın, ardından bayt dizisini elde etmek için toByteArray()
numaralı telefonu arayın.
Okumak için bayt dizisinin çevresinde bir ByteArrayInputStream oluşturun. İlk
import java.io.*;
public class Test {
public static void main(String[] arg) throws Throwable {
File f = new File(arg[0]);
InputStream in = new FileInputStream(f);
byte[] buff = new byte[8000];
int bytesRead = 0;
ByteArrayOutputStream bao = new ByteArrayOutputStream();
while((bytesRead = in.read(buff)) != -1) {
bao.write(buff, 0, bytesRead);
}
byte[] data = bao.toByteArray();
ByteArrayInputStream bin = new ByteArrayInputStream(data);
System.out.println(bin.available());
}
}
Neredeyse oradaydım! Örnek için teşekkürler tho. IO'nun gerçek bir ustası! – user398371
Rica ederim :) – naikus
Ya sonra ByteArrayInputStream için, bir bayt dizisi dönüştürmek:
Burada hızlı bir test. ByteArrayInputStream yana
File f = new File(arg[0]);
InputStream in = new FileInputStream(f);
// convert the inpustream to a byte array
byte[] buf = null;
try {
buf = new byte[in.available()];
while (in.read(buf) != -1) {
}
} catch (Exception e) {
System.out.println("Got exception while is -> bytearr conversion: " + e);
}
// now convert it to a bytearrayinputstream
ByteArrayInputStream bin = new ByteArrayInputStream(buf);
http://stackoverflow.com/questions/2163644/in-java-how-can-i-convert-an-inputstream-into-a-byte-array- [] bayttan yapı olan byte http://stackoverflow.com/questions/1264709/convert-inputstream-to-byte-in-java – h3xStream
'javax.imageio' sınıflarını kullanmayacağınız resimlerle tam olarak ne yapıyorsunuz? – Powerlord
Amazon S3'e yükleniyor ... Java kütüphanesi Dize olmayan tüm veri için gereken ByteArrayInputStream kullanıyorum – user398371