kostenloser Webspace werbefrei: lima-city


Socket Applikation

lima-cityForumProgrammiersprachenJava

  1. Autor dieses Themas

    n*t

    Hab die heute mal angeschaut - sind nicht schwer. Allerdings hab ich ein kleines Problem:

    Es soll ein test Server gestartet werden der auf einem Port h?rt und bei Dateneingang vergleicht was dabei rauskommt und irgendwas sinnfreies ausf?hrt - als ?bung eben.

    Kein Problem - bei meiner Methode muss jedoch f?r jede Anfrage eine neue Verbindung gestartet werden

    while(true){
    try {
    c = server.accept();
    in = new BufferedReader(new InputStreamReader(c.getInputStream()));
    out = new PrintStream(c.getOutputStream());

    String get = in.readLine();
    ...


    Also hab ich den Code ein wenig umge?ndert


    Socket c=null;
    BufferedReader in = null;
    PrintStream out = null;
    try {
    c = server.accept();
    in = new BufferedReader(new InputStreamReader(c.getInputStream()));
    out = new PrintStream(c.getOutputStream());
    } catch (IOException e1) {}

    while(true){
    String get = in.readLine();


    Diese Methode funktioniert nur bis zur ersten Ausf?hrung von "String get = in.readLine();" bei allen weiteren Iterationen wird eine Exception geworfen.
    Meine Idee war vor der besagten Zeile zu warten bis tats?chlich Eingabe kommt - liege ich da richtig oder wird das auf eine ganz andere Weise gemacht? Die Erkl?rung bei sun verstehe ich nicht recht weil da kein fertiger Code sondern nur Schnipsel dessen Zusamenhang nicht ganz nachvollziehbar ist
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. d****y

    Hi!

    Bei mir funktioniert der Code wunderbar.

    Ich vermute mal, dass der Fehler wo anders liegt. Aus dem kleinen Schnipsel kann man aber auch nicht all zu viel erkennen.

    Du k?nntest auch vielleicht etwas mehr ?ber deine Exception erz?hlen.
  4. e**o

    es kann sein dass der client nur 1 line schickt und dann die main aufhört => dann is connection tot und = exception

    mfg
  5. p**i

    Moin,

    da das ein bisschen zu wenig Code ist,
    gebe ich Dir mal diesen Link:

    http://www.lima-city.de/boards.php?mode=thread&id=55554

    Vielleicht hilft Dir das ja weiter.

    Gruss,
    Puni
  6. o**o

    das geht wahrscheinlich auch nur weil erst nach der ersten ausführung geprüft wird ob while immernoch true ist.

    muss man da nicht schreiben:

    Socket c = new Socket();
    dann die Verbindung öffnen

    und dann

    while(in.hasNext())<-- d.h. wenn in in nochmehr Daten sind

    und dann was sinnloses ausführen


  7. p**i

    Auch dieser Thread wird geschlossen.

    Unterlasst es in Zukunft bitte, alten Käse herauszukramen und zu beantworten.

    Die darin enthaltenen Probleme wurden gelöst.

    Gruß,
    Puni
  8. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!