Toon posts:

[Java] Socketserver .equals probleem

Pagina: 1
Acties:
  • 204 views

  • ClickTwice
  • Registratie: augustus 2008
  • Laatst online: 13-10 16:25
Ik heb een java multithreaded socket server opgezet en gebruik een flash client om er mee te communiceren.

Probleem: De flash client verbind met de socket server, en wanneer een event gebeurd stuurt hij een test string 'Test'. De eerste maal dat de client deze test string stuurt reageerd de server erop met 'ok', echter wanneer de client een tweede maal 'Test' stuurt komt deze boodschap wel aan bij de socket server maar reageerd hij niet meer.

Java code:
Java:
1
2
3
4
5
6
7
8
9
while((line = in.readLine()) != null && !line.equals(".")) {
            System.out.println("Incomming: " + line);
            if(line.equals("quit")){
                break;
            }else if (line.equals("Test")){
                out.println("Ok");
                System.out.println("Outgoing: Ok");
            }
        }


As code:
code:
1
2
3
4
5
if (Key.isDown(key.UP)) {
        
        server.send('Test' + '\n');
        trace('send');
}

  • ClickTwice
  • Registratie: augustus 2008
  • Laatst online: 13-10 16:25
Resultaat van : System.out.println("Incomming: [" + line + "]");
code:
1
2
3
Incomming: [T]
Outgoing: 25_25
Incomming: [T]


Geen spaties, ben even uitzoeken hoe dat ik moet dumpen, post zometeen het resultaat

[Voor 29% gewijzigd door ClickTwice op 15-10-2010 19:01]


  • ClickTwice
  • Registratie: augustus 2008
  • Laatst online: 13-10 16:25
Sorry foutje, had de string even veranderd naar T maar in geval van Test geeft die Test bij incomming en Ok bij outgoing.

Heb even charAt(4) gebruikt en dit resulteert in een fout:
Incomming: [Test]
Exception in thread "Thread-0" java.lang.StringIndexOutOfBoundsException: String index out of range: 4

Dus lijkt me dat er geen characters meer achter de string staan.

[EDIT]
Heb de fout:
Java:
1
2
3
4
5
System.out.println("Incomming: [" + line + "]");
            System.out.println(line.charAt(0));
            System.out.println(line.charAt(1));
            System.out.println(line.charAt(2));
            System.out.println(line.charAt(3));


Console:
Incomming: [Test]
T
e
s
t
Outgoing: 25_25
Incomming: [Test]

[Voor 37% gewijzigd door ClickTwice op 15-10-2010 19:15]


  • ClickTwice
  • Registratie: augustus 2008
  • Laatst online: 13-10 16:25
Sorry voor dubbel post, edit van bovenstaande post weergaf niet mijn volledige aanpassing...

Er staat dus een spatie voor de tweede 'test' string, echter hoe komt de daar? Ik heb die toch helemaal niet verzonden in de flash client....

[Voor 109% gewijzigd door ClickTwice op 15-10-2010 19:18]


  • ClickTwice
  • Registratie: augustus 2008
  • Laatst online: 13-10 16:25
Ik vermoed dat de fout die spatie is die voor de tweede verzonden string verschijnt echter bij het println van die string tussen brakkets is er niets te zien van die spatie...

Ascii resultaat:

Eerste send: character 0: 84
Tweede send: character 0: 0

Dus dat is een 'NUL' en geen spatie, alsnog waar kan die vandaan komen?

[Voor 30% gewijzigd door ClickTwice op 15-10-2010 19:25]


  • ClickTwice
  • Registratie: augustus 2008
  • Laatst online: 13-10 16:25
Incomming: [Test]
84
101
115
116
Outgoing: 25_25
Incomming: [Test]
0
84
101
115
116

[Voor 17% gewijzigd door ClickTwice op 15-10-2010 19:27]

Pagina: 1

Dit topic is gesloten.



Nintendo Switch (OLED model) Apple iPhone 13 LG G1 Google Pixel 6 Call of Duty: Vanguard Samsung Galaxy S21 5G Apple iPad Pro (2021) 11" Wi-Fi, 8GB ram Nintendo Switch Lite

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2021 Hosting door True

Tweakers maakt gebruik van cookies

Bij het bezoeken van het forum plaatst Tweakers alleen functionele en analytische cookies voor optimalisatie en analyse om de website-ervaring te verbeteren. Op het forum worden geen trackingcookies geplaatst. Voor het bekijken van video's en grafieken van derden vragen we je toestemming, we gebruiken daarvoor externe tooling die mogelijk cookies kunnen plaatsen.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Forum cookie-instellingen

Bekijk de onderstaande instellingen en maak je keuze. Meer informatie vind je in ons cookiebeleid.

Functionele en analytische cookies

Deze cookies helpen de website zijn functies uit te voeren en zijn verplicht. Meer details

janee

    Cookies van derden

    Deze cookies kunnen geplaatst worden door derde partijen via ingesloten content en om de gebruikerservaring van de website te verbeteren. Meer details

    janee