社区
Web 开发
帖子详情
断口通信问题
jabeginner
2006-05-06 11:43:30
端口创建好了,可是不能通信是怎么回事。
通信我是用Socket(host,port) 方法做的。
在客户运行的时候提示“找不到服务器”(服务器端已经运行)。谁能帮我详细解释一下。谢谢!
...全文
189
8
打赏
收藏
断口通信问题
端口创建好了,可是不能通信是怎么回事。 通信我是用Socket(host,port) 方法做的。 在客户运行的时候提示“找不到服务器”(服务器端已经运行)。谁能帮我详细解释一下。谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jabeginner
2006-05-11
打赏
举报
回复
试 不出来啊!
高手们。再帮忙想一下吧
jshi123
2006-05-11
打赏
举报
回复
CMD窗口打开方式:
左下角: 点[开始] -> 点[运行] ->输入:cmd -> 按[确定]
jshi123
2006-05-11
打赏
举报
回复
telnet 是命令行程序,用来和远程计算机通信。
我的意思是,你先执行这条命令看一下,是否可以访问到你程序中指定的那台计算机。
如果输入命令后,CMD窗口变成黑屏(一般是没有任何内容),则可以说明和远程电脑的连接是正常的,问题出在程序。否则,如果屏幕提示为“无法连接……”,则说明到对方电脑的网络连接有问题,首先要排除这方面的问题。
所以,你试下来的结果是?
jshi123
2006-05-11
打赏
举报
回复
你照我的方法试过了吗?结果是什么?
ruanjiantaotao
2006-05-09
打赏
举报
回复
楼主看一下java网络编程的书,有很多创建socket通信编程的,我看过你的代码,好象没问题,但是客户端连不上~
jshi123
2006-05-09
打赏
举报
回复
在client端开cmd窗口i,执行
telnet bemyfriend 1112
有什么反应吗?
jabeginner
2006-05-08
打赏
举报
回复
客户端程序:
import java.io.*;
import java.net.*;
public class client {
public static void main(String[] args)throws IOException{
Socket kksocket=null;
PrintWriter out=null;
BufferedReader in=null;
boolean runable=true;
String toserver;
try{
kksocket=new Socket("bemyfriend",1112) ;
out =new PrintWriter(kksocket.getOutputStream() ,true) ;
in=new BufferedReader(new InputStreamReader(kksocket.getInputStream() ) ) ;
}catch (UnknownHostException e){
System.err .println("找不到服务器") ;
System.exit(1) ;
}
catch(IOException e){
System.err .println("不能获得sock的读入与写出器") ;
System.exit(1) ;
}
BufferedReader stdin =new BufferedReader(new InputStreamReader(System.in ) ) ;
out.println("新用户登陆") ;
RSThread rsthread=new RSThread(in) ;
rsthread.start() ;
while(runable){
toserver=stdin.readLine() ;
out.println(toserver);
if(toserver.equals("Bye") )break;
runable=rsthread.runable ;
}
rsthread.fromserver="欢迎下次再来";
rsthread.runable =false;
out.close() ;
in.close() ;
stdin.close() ;
kksocket.close() ;
}
}
class RSThread extends Thread {
BufferedReader in=null;
String fromserver="";
boolean runable=true;
public RSThread(BufferedReader in){
this.in =in;
}
public void run(){
while (runable) {
try {
fromserver = in.readLine();
}
catch (Exception e) {
runable = false;
}
if (fromserver.equals("Bye")) {
System.out.print("服务器端程序退出");
runable = false;
break;
}
System.out.println("服务器;" + fromserver);
}
}
}
服务器端程序:
import java.awt.Toolkit;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import java.awt.Dimension;
import java.net.*;
import java.io.*;
public class server{
public static void main(String[] args)throws IOException{
String toclient;
PrintWriter out=null;
BufferedReader in=null;
boolean runable=true;
ServerSocket serversocket=null;
try{
serversocket=new ServerSocket(1112) ;
}
catch(IOException e){
System.err .println(" 不能创建1111断口") ;
System.exit(1) ;
}
Socket clientsocket=null;
try{
clientsocket=serversocket.accept() ;
}
catch(IOException e){
System.err .println("访问断口失败") ;
System.exit(1) ;
}
out =new PrintWriter(clientsocket.getOutputStream() ,true) ;
in=new BufferedReader(new InputStreamReader(clientsocket.getInputStream() ) ) ;
BufferedReader stdin =new BufferedReader(new InputStreamReader(System.in ) ) ;
toclient ="你好,欢迎你!";
out.printf(toclient) ;
RCthread rcthread=new RCthread(in) ;
rcthread.start() ;
while (runable){
toclient=stdin.readLine() ;
out.println(toclient) ;
if(toclient.equals("Bye."))break;
runable=rcthread.runable ;
}
rcthread.fromclient ="欢迎下次再来";
rcthread.runable =false;
out.close() ;
stdin.close() ;
clientsocket.close() ;
serversocket.close() ;
}
}
class RCthread extends Thread {
BufferedReader in=null;
String fromclient="";
boolean runable=true;
public RCthread (BufferedReader in){
this.in =in;
}
public void run(){
while(runable){
try{
fromclient=in.readLine() ;
}
catch(Exception e){
runable=false;
}
if(fromclient.equals("Bye") ){
System.out .print("客户端程序退出") ;
runable=false;
break;
}
System.out .println("客户端;"+fromclient) ;
}
}
}
在客户端运行结果是:
“找不到服务器”(服务器端已经运行)。
coolmomo
2006-05-08
打赏
举报
回复
贴代码出来
外文翻译-AT89C52单片机的介绍
AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中
断口
,3个16位可编程定时计数器,2个全双工串行
通信
口,2 个读写口线,AT89C52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和...
毕业论文-基于单片机温度控制系统硬件设计(第2章 系统硬件设计).doc
AT89C52 有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中
断口
,3个16 位可编程定时计数器,2个全双工串行
通信
口,2个读写口线AT89C52 可以按照常规方法进行编程,但不可以在线编程(S 系列的才支持在线编程)...
at89c52单片机引脚说明.doc
AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中
断口
,3个 16位可编程定时计数器,2个全双工串行
通信
口,2 个读写口线,AT89C52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理...
AT89C52是51系列单片机的一个型号,它是ATMEL公司生产的。
AT89C52是51系列单片机的一个型号,它是ATMEL公司生产的。AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中
断口
,3个16位可编程定时计数器,2个全双工串行
通信
口,2个读写口线
计算机网络系统防雷设计方案.docx
由于大地电阻的存在,雷电电荷不能快速全部的与大地负电荷中和,必然引起局部地电位升高,交流配电地和直流逻辑地将这种高电位引入机房,UPS输出、输入端被击穿,小型机及其他网络设备连接
断口
被击穿。这种反击电压...
Web 开发
81,094
社区成员
341,717
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章