Forum: java (host och port-problem)

Forum huvudsida -> Programmering -> java (host och port-problem)

Sidor: 1

Till botten

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)
Atom feed

Du får inte posta i den här tråden | Till toppen