2006-11-19, 20:39
#1
Har ett program som skall gra en kort liten sekvens bara fr att testa sockets.
Jag kr en lokal server p port 2000 dr jag sjlv kan vlja vad jag ska svara.
Problemet med denna kod r att jag aldrig kommer in if-satsen (nstan lngst ner i koden) ven om jag skickar OK frn servern till klienten s kommer den aldrig in dit. Kan ngon hjlpa?
Koden r:
Jag kr en lokal server p port 2000 dr jag sjlv kan vlja vad jag ska svara.
Problemet med denna kod r att jag aldrig kommer in if-satsen (nstan lngst ner i koden) ven om jag skickar OK frn servern till klienten s kommer den aldrig in dit. Kan ngon hjlpa?
Koden r:
Kod:
import java.io.*; import java.net.*; public class EchoClient { public static void main(String[] args) throws IOException { Socket echoSocket = null; PrintWriter out = null; BufferedReader in = null; boolean bajs = true; try { echoSocket = new Socket("127.0.0.1", 2000); out = new PrintWriter(echoSocket.getOutputStream(), true); in = new BufferedReader(new InputStreamReader( echoSocket.getInputStream())); } catch (UnknownHostException e) { System.err.println("Error connectiong"); System.exit(1); } catch (IOException e) { System.err.println("Couldn't get I/O for "+ "the connection."); System.exit(1); } BufferedReader stdIn = new BufferedReader(new InputStreamReader(System.in)); while(bajs==true) { out.println("HEJSAN"); String svar1 = in.readLine(); System.out.println (svar1); if(svar1=="OK") { System.out.println ("Jag r inne i glada loopen nu!"); out.println("OKAY"); } else { System.out.println (in.readLine()); } } out.close(); in.close(); stdIn.close(); echoSocket.close(); } }