課程
/后端開發(fā)
/Java
/Java Socket應(yīng)用---通信是這樣練成的
我按照視頻中一模一樣打的代碼為什么服務(wù)器端運行了,客戶端運行時什么東西都沒有輸出
2016-08-02
源自:Java Socket應(yīng)用---通信是這樣練成的 3-4
正在回答
pw.flush();//刷新緩存
pw.close();
os.close();
socket.shutdownInput();
br.close();
is.close();
socket.close();
這個是客戶端的 ?其中 ?socket.shutdownInput ? ? 應(yīng)該改為socket.shutdonwnOutput ? ? ??
因為上面是接收了 輸出流 ?所以是要關(guān)閉輸出流 ??
再有是你的客戶端的地方 ?有同樣的問題 ? ? 把socket.shutdownOutput ? 改為socket.shutdownInput ? ?
System.out.println("我是客戶端,服務(wù)器說"+info);
info = br.readLine();
}
pw.flush();
socket.shutdownOutput();
package com.imooc;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
/**
?*?
?* 服務(wù)器
?*
?*/
public class Serve {
public static void main(String[] args) {
//1.創(chuàng)建一個服務(wù)器socket
try {
ServerSocket serversocket =new ServerSocket(8888);
//2.調(diào)用accept方法開始監(jiān)聽,等待客戶端的鏈接
System.out.println("****服務(wù)器即將啟動,等待客戶端的鏈接****");
Socket socket =serversocket.accept();
//3.獲取輸入流,并讀取客戶端信息
InputStream is=socket.getInputStream();
BufferedReader br=new BufferedReader(new InputStreamReader(is));
String info =null;
while ((info =br.readLine())!=null)
{
System.out.println("我是服務(wù)器,客戶端說"+info);
OutputStream os=socket.getOutputStream();
PrintWriter ?pw=new PrintWriter(os);
pw.write("welcome!");
serversocket.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}//>1023
這是服務(wù)器端的?
import java.net.UnknownHostException;
?* 客戶端
public class Client {
Socket socket =new Socket("localhost",8888);
//2.獲取輸出流,向服務(wù)器端發(fā)送信息
pw.write("用戶名:admin;密碼:123");
} catch (UnknownHostException e) {
這是客戶端?
moluchase
你的把你的代碼貼出來,大家才能幫你解決啊
舉報
分享的是 Java 中的網(wǎng)絡(luò)編程,使用Socket實現(xiàn)網(wǎng)絡(luò)聊天通信
3 回答我按照視頻中一模一樣打的代碼為什么服務(wù)器端運行了,客戶端運行時什么東西都沒有輸出
2 回答我運行服務(wù)器端之后,運行客戶端,但是沒有任何信息被打印出來。這是什么原因?
4 回答為什么我只啟動了服務(wù)器端沒有啟動客戶端卻有一個客戶端自己啟動了
1 回答客戶端運行后控制臺為什么輸出Sid
2 回答為什么我的客戶端一啟動,服務(wù)器就關(guān)閉了
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2016-12-12
pw.flush();//刷新緩存
pw.close();
os.close();
socket.shutdownInput();
br.close();
is.close();
socket.close();
這個是客戶端的 ?其中 ?socket.shutdownInput ? ? 應(yīng)該改為socket.shutdonwnOutput ? ? ??
因為上面是接收了 輸出流 ?所以是要關(guān)閉輸出流 ??
再有是你的客戶端的地方 ?有同樣的問題 ? ? 把socket.shutdownOutput ? 改為socket.shutdownInput ? ?
System.out.println("我是客戶端,服務(wù)器說"+info);
info = br.readLine();
}
pw.flush();
socket.shutdownOutput();
pw.close();
2016-08-03
package com.imooc;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
/**
?*?
?* 服務(wù)器
?*
?*/
public class Serve {
public static void main(String[] args) {
//1.創(chuàng)建一個服務(wù)器socket
try {
ServerSocket serversocket =new ServerSocket(8888);
//2.調(diào)用accept方法開始監(jiān)聽,等待客戶端的鏈接
System.out.println("****服務(wù)器即將啟動,等待客戶端的鏈接****");
Socket socket =serversocket.accept();
//3.獲取輸入流,并讀取客戶端信息
InputStream is=socket.getInputStream();
BufferedReader br=new BufferedReader(new InputStreamReader(is));
String info =null;
while ((info =br.readLine())!=null)
{
System.out.println("我是服務(wù)器,客戶端說"+info);
info = br.readLine();
}
OutputStream os=socket.getOutputStream();
PrintWriter ?pw=new PrintWriter(os);
pw.write("welcome!");
pw.flush();//刷新緩存
pw.close();
os.close();
socket.shutdownInput();
br.close();
is.close();
socket.close();
serversocket.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}//>1023
}
}
這是服務(wù)器端的?
package com.imooc;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.Socket;
import java.net.UnknownHostException;
/**
?*?
?* 客戶端
?*
?*/
public class Client {
public static void main(String[] args) {
try {
Socket socket =new Socket("localhost",8888);
//2.獲取輸出流,向服務(wù)器端發(fā)送信息
OutputStream os=socket.getOutputStream();
PrintWriter ?pw=new PrintWriter(os);
pw.write("用戶名:admin;密碼:123");
InputStream is=socket.getInputStream();
BufferedReader br=new BufferedReader(new InputStreamReader(is));
String info =null;
while ((info =br.readLine())!=null)
{
System.out.println("我是客戶端,服務(wù)器說"+info);
info = br.readLine();
}
pw.flush();
socket.shutdownOutput();
pw.close();
os.close();
socket.close();
br.close();
is.close();
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
這是客戶端?
2016-08-03
你的把你的代碼貼出來,大家才能幫你解決啊