2013-05-08 16 views
-2

在我的應用程序應該服務器發送字符串數組從客戶機到服務器類,在這個我已經通過的PrintWriter發送類似, Myclient.java字符串數組從客戶端發送到使用的BufferedReader和PrintWriter的java的

br = new BufferedReader(new InputStreamReader(client.getInputStream())) ; 
     pw = new PrintWriter(client.getOutputStream(),true); 
     pw.println(uname+","+selected_Client); 
     //selected_Client String array value 

這裏怎麼我可以採取服務器類中的字符串數組值。 Plz給我建議。

+0

你的問題的東西是怎麼寫的服務器代碼收到這些字符串從客戶端發送? – 2013-05-08 12:05:12

+0

是的。以及我不知道它是否正確。給我最好的解決方案。 – kanna 2013-05-08 12:14:35

回答

0

您可以嘗試類似這樣

ServerSocket serversocket = null; 
    Socket socket = null; 
    try{ 
     //establish a server socket monitoring port 8189 
     //port 8189 is not used by any services 
     serversocket = new ServerSocket(8189); 
     System.out.println("Listening at 127.0.0.1 on port 8189"); 

     //wait indefinitely until a client connects to the socket 
     socket = serversocket.accept(); 

     //set up communications for sending and receiving lines of text data 
     //establish a bufferedreaderr from the input stream provided by the socket object 
     InputStreamReader inputstreamreader = new InputStreamReader(socket.getInputStream()); 
     BufferedReader bufferedreader = new BufferedReader(inputstreamreader); 

     //establish an printwriter using the output streamof the socket object 
     //and set auto flush on  
     PrintWriter printwriter = new PrintWriter(socket.getOutputStream(),true); 

     //for binary data use 
     // DataInputStream and DataOutputStream 

     //for serialized objects use 
     // ObjectInputStream and ObjectOutputStream 

     String datetimestring = (Calendar.getInstance()).getTime().toString(); 
     printwriter.println("You connected to the Simple Server at " + datetimestring); 
     printwriter.println("Send Bye to disconnect."); 

     String lineread = ""; 
     boolean done = false; 
     while (((lineread = bufferedreader.readLine()) != null) && (!done)){ 
     System.out.println("Received from Client: " + lineread); 
     printwriter.println("You sent: " + lineread); 
     if (lineread.compareToIgnoreCase("Bye") == 0) done = true; 
     } 
     System.out.println("Closing connection."); 
     bufferedreader.close(); 
     inputstreamreader.close(); 
     printwriter.close(); 
     socket.close(); 
相關問題