ОК, поэтому я пытался прочитать ("любой") двоичный файл в массив байтов [], используя FileInputReader.read()... Но независимо от длины файла он читает только 5 байтов за раз... (кстати, я использую udp для отправки массива/файла)
byte[] array_bytes = new byte[1024];
while((nread=file.read(array_bytes))!=-1){
number_bytesread += array_bytes.length;
socket_udp.send(send_package);
count += 1;
}
-send_package — пакет датаграмм, использующий array_bytes для отправки сообщения
Я пытался использовать функцию чтения (байт [], смещение, длина), но если я ставлю длину больше 5, возникает эта ошибка при первом чтении, даже если файл наверняка больше 5 байтов:
nread=file.read(array_bytes, 0, 1024);
нет необходимости в смещении, так как я отправляю сразу после прочтения.
Exception in thread "main" java.lang.IndexOutOfBoundsException
at java.io.FileInputStream.readBytes(Native Method)
at java.io.FileInputStream.read(FileInputStream.java:272)
at udp_server2.UDP_Server2.Send_Udp(UDP_Server2.java:122)
at udp_server2.UDP_Server2.main(UDP_Server2.java:77)
Java Result: 1
Заранее спасибо за помощь, Андре