Я пытаюсь передать файлы с DatagrammSocket в Java. Я читаю файлы в 4096 байт. Мы используем ACK, поэтому все части находятся в правильном порядке, мы пытались использовать pdf, exe, jpg и многое другое, но iso, zip и 7z не работают. После этого они имеют точно такой же размер. Есть ли у вас какие-либо идеи?Передача файлов Java через UDP. Сжатые файлы повреждены?
Чтения в части:
byte[] b = new byte[FileTransferClient.PACKAGE_SIZE - 32];
FileInputStream read = new FileInputStream(file);
read.skip((part - 1) * (FileTransferClient.PACKAGE_SIZE - 32));
read.read(b);
content = b;
Пишущих Части:
stream = new FileOutputStream(new File(this.filePath));
stream.write(output);
...
stream.write(output);
stream.close();
(Извините за большую грамматику, я немецкий)
Предоставление UDP не гарантируется. Вы должны использовать TCP для этого. –
Мне нужно использовать UDP, у меня есть собственный протокол, чтобы убедиться, что все передано и не повреждено. Так байт по байт тот же ... – LittelTeddy
Вы не разместили весь соответствующий код. Как «контент» попадает на провод? и как формируется «выход»? – EJP