Hoi allemaal.
Ik heb een client en een server geschreven waarmee ik pakketjes heen en weer wil sturen. Pakketjes worden gemaakt van een byte array. Het probleem is dat volgens TCP je geen pakketjes groter dan 1500 bytes mag sturen.
Als ik een String wil sturen lukt het allemaal wel (ik maak er een byte array van met getBytes()). Alleen wil ik een groter bestand versturen. Deze moet ik dus zien te verkleinen naar pakketjes. Weet iemand hoe je dit het beste kan doen?
Dit is de code:
Dit pakketje wordt vervolgens via een DatagramSocket verzonden:
Ik heb een client en een server geschreven waarmee ik pakketjes heen en weer wil sturen. Pakketjes worden gemaakt van een byte array. Het probleem is dat volgens TCP je geen pakketjes groter dan 1500 bytes mag sturen.
Als ik een String wil sturen lukt het allemaal wel (ik maak er een byte array van met getBytes()). Alleen wil ik een groter bestand versturen. Deze moet ik dus zien te verkleinen naar pakketjes. Weet iemand hoe je dit het beste kan doen?
Dit is de code:
code:
1
2
3
4
5
6
7
| private DatagramPacket createPacket(byte[] outData)
{
DatagramPacket sendPacket = new DatagramPacket(outData,
outData.length, serverAddress, SERVER_PORT);
return sendPacket;
} |
Dit pakketje wordt vervolgens via een DatagramSocket verzonden:
code:
1
2
3
4
5
6
7
8
9
10
11
| private void sendPacket(DatagramPacket sendPacket)
{
try
{
socket.send(sendPacket);
}
catch (Exception e)
{
System.out.println(e.getMessage());
}
} |