Forum huvudsida -> Programmering -> java (host och port-problem)
Sidor: 1
Veronica | 16:25 - 7:e November 2007 | Post #1 | |
Medlem Inlägg: 5 Skicka PM |
Hej Jag har en chat klient skriven i java.. den ska kunna startas på alla dessa 3 sätt men just nu kan jag bara köra den med kommandot java Client <host> <port> Hur löser jag detta (gärna på ett lätt sätt):)? Chat-klienten ska gå att startas på tre sätt: java Client (då ska host default bli xxx.x.x.x och port default bli xxxx) java Client <host> (då ska port default bli xxxx) java Client <host> <port> |
Slash | 17:22 - 7:e November 2007 | Post #2 | |
Medlem Inlägg: 141 Skicka PM |
Hej. Jag antar att du har en main-metod liknande public static void main(String [] argv) { } Då kan du kolla hur många argument som skickades med ditt program genom att helt enkelt kolla längden på argv-arrayen. Den längden är också hur många argument du skickar med. Längden på en array får du med argv.length; Så om den längden är 0 är det fall ett, om den är 1 så är det fall två och om den är 2 så är det fall tre. ------------------------- Ingen sigantur! Senast redigerad 17:23 - 7:e November 2007 |
Veronica | 22:32 - 7:e November 2007 | Post #3 | |
Medlem Inlägg: 5 Skicka PM |
tack! Det var ju grymt bra! Det är bara en grej som inte funkar nu som jag tror har med omvandlingen från string till int. (det var alltså den som jag trodde fungerade förr): java Client <host> <port> Här är omvandlingen. Vad är felet? String argone; String argtwo; Integer arg; (arg och argone skickar jag till socketen) if (args.length == 2){ argone = args[0]; argtwo = args[1]; try { arg = Integer.valueOf(argtwo).intValue(); catch (NumberFormatException e) { System.out.println(e); } } Senast redigerad 22:34 - 7:e November 2007 |
Slash | 23:06 - 7:e November 2007 | Post #4 | |
Medlem Inlägg: 141 Skicka PM |
Om du kollar dokumentationen Integer.intValue (http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Integer.html#intValue()) så returnerar den en vanlig int (och inte en Integer som är ett objekt som kapslar in en int). Så antingen så är det int port = Integer.parseInt(args[1]); eller Integer port = Integer.valueOf(args[1]); Beroende på vilken typ du vill ha (vanliga int är typiskt effektivast). ------------------------- Ingen sigantur! Senast redigerad 23:07 - 7:e November 2007 |
Veronica | 23:16 - 7:e November 2007 | Post #5 | |
Medlem Inlägg: 5 Skicka PM |
Tack... tyvärr funka det inte denna gång... jag får kolla igenom och återkomma om jag nte kokmmer påp felet! |
stampe | 23:49 - 7:e November 2007 | Post #6 | |
Medlem Inlägg: 30 Skicka PM |
Google:d |
Sidor: 1
Forum huvudsida -> Programmering -> java (host och port-problem)
Du får inte posta i den här tråden | Till toppen
Datum
2024-04-29 17:29
Vecka: 18
Besökare
Inloggade: 0
Gäster: 605
Medlemmar
Medlemmar: 53576
Forum
Senaste inlägget: HAHA MÄNNISKAN LEVER ÄN (13:45 - 18:e Januari 2019, av Hetzz)
Wiki
Senaste ändringen:
3D (rev: 1, tid: 09:40 - 13:e November 2015)
Chatt
#blinkenlights @ Libera.Chat
Gratis shellkonton för IRC, webbsidor mm.