Задать вопрос
@Konstantin1706

Работа с сокетами, почему получаю непонятные данные (Java)?

Добрый день. Имеется клиент-серверное приложение. Клиент отправляет адрес файла, сервер принимает и отправляет размер этого файла, но клиент принимает совсем не то число(оно либо отрицательное большое число, либо большое положительное), как будто это некий мусор.
Клиент.
DataInputStream din = new DataInputStream(sock.getInputStream());
DataOutputStream dos = new DataOutputStream(sock.getOutputStream());
dos.writeUTF("1.txt");
long fileSize = din.readLong();//непонятное число

Сервер.
DataInputStream dIn = new DataInputStream(socket.getInputStream());
String selectedFile = dIn.readUTF();//принимает то, что нужно
File dd = new File(selectedFile);
long size = dd.length();
dos.writeLong(size);
dos.flush();

Если кто знает, подскажите. Спасибо большое за внимание.
  • Вопрос задан
  • 253 просмотра
Подписаться 3 Оценить 1 комментарий
Пригласить эксперта
Ответы на вопрос 2
@lyeskin
А в переменную size точно попадает корректно число ?
Ответ написан
Комментировать
@Konstantin1706 Автор вопроса
исключительно, проверял.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы