
SKO ciąg dalszy…
listopad 3, 2006
Ok przy pomocy Przemka udało mi się w końcu rozszerzyć mojego klienta o wczytywanie danych z pliku (ktorego nazwa jest pobierana przez argument).
No więc po kolei, mieliśmy uruchamiać klienta w którym jednym z parametrów jest nazwa pliku. U mnie wygląda to tak :
dist>java -jar UDPClient.jar dane.txt
teraz mam miejsce na wpisanie danych które zostaną przesłane… szczerze powiedziawszy mimo tych
- [count] – ilosc wysłanych pakietów
- [interval] – czas co jaki wysyłany jest kolejny pakiet od momentu przyjścia ostatniej odpowiedzi
- [preload] – ilość pakietów, jakie moga byc wysłane bez odpowiedzi
- [pattern] – zawartość (wzór) wysyłanego pakietu
- [packetsize] – rozmiar wysyłanego pakiet
wciąż nie wiem jak ma wyglądać pakiet…
no w każdym bądź razie, jak wygląda wczytanie pliku ? (może dla Was to banał ale ja się z tym męczyłęm… no i męczyłem Przemka ^_- ).
Dodałem dwie zmienne, dla portu i adresu IP.
class UDPClient {
//zmienna dla adres ip hosta
public String ipek="";
//zmienna dla portu hosta
public int porcisko=0;
(......)
}
Teraz te zmienne wczytuje z pliku linia po linii :
ipek = in.readLine();
porcisko = Integer.parseInt(in.readLine());
Jak może pamiętacie z poprzednich newsów informacje o porcie znajdowały się w miejscu gdzie tworzyliśmy pakiet “sendPacket”. Tam też umieszczamy zmienną “porcisko”.
DatagramPacket sendPacket =
new DatagramPacket(sendData,
sendData.length, //dlugosc danych
IPAddress, //adres IP serwera
porcisko); //numer portu wczytany ze zmiennej
zapewne zastanowicie się co więc robi tam IPAddress… a no zmienną ipeka wcisnąłem gdzieś wcześniej :)
InetAddress IPAddress = InetAddress.getByName(ipek);
no i dalej to juz takie układanie kodu. No w każdym razie narazie mi działa, teraz się zastanawiam nad tym jakie konkretnie dane mamy przesyłać do hosta docelowego… no ale zobaczymy…
idę spać…


