黑马程序员技术交流社区
标题:
Tcp问题,求解
[打印本页]
作者:
天方地圆
时间:
2014-3-28 09:39
标题:
Tcp问题,求解
图片.jpg
(166.81 KB, 下载次数: 19)
下载附件
2014-3-28 09:39 上传
编译通过,出现上面的问题,是怎么回事?求解。
作者:
osully
时间:
2014-3-28 09:56
虽然不是很懂,但是看单词,应该是类加载器的问题,...
作者:
yanzhendong
时间:
2014-3-28 10:10
代码发上来看看
作者:
yanzhendong
时间:
2014-3-28 10:12
函数名写错了,你的函数tcpServer写成了TcPServer
作者:
天方地圆
时间:
2014-3-28 10:19
yanzhendong 发表于 2014-3-28 10:10
代码发上来看看
import java.io.*;
import java.net.*;
/*
给服务端发送一个文本数据。
*/
class TcpClient
{
public static void main(String[] args) throws Exception
{
//创建客户端的socket服务,指定目的主机和端口。
Socket s = new Socket("49.122.68.13",1003);
//为了发送数据,应该获取socket流中输出流。
OutputStream out = s.getOutputStream();
out.write("tcp ge men lai la".getBytes());
s.close();
}
}
/*
需求:定义端点接收数据并打印在控制台上。
*/
class TcpServer
{
public static void main(String[] args)throws Exception
{
//建立服务端socket服务。监听一个端口。
ServerSocket ss = new ServerSocket(10003);
//通过accept方法获取连接过来的客户端对象。
Socket s = ss.accept();
String ip = s.getInetAddress().getHostAddress();
System.out.println(ip+"....connected");
//获取客户端发过来的数据,那么使用客户端对象的读取流来读取数据。
InputStream in = s.getInputStream();
byte[] buf = new byte[1024];
int len = in.read(buf);
System.out.println(new String(buf,0,len));
s.close();//关闭客户端。
ss.close();
}
}
复制代码
这是全部的代码。开始这个类名
TcpServer 写错了 ,不过改过来了 ,还是不行。
作者:
午夜b'Boy
时间:
2014-3-28 11:14
端口号的问题吧,你的服务器监听10003,客户端发到1003;而且端口从1-1024是系统保留端口,可能会有冲突。。
作者:
yanzhendong
时间:
2014-3-28 11:19
14行的Socket s = new Socket("49.122.68.13",1003);错了,Socket的构造函数第一个参数是InetAddress类型的不是String类型的,还有楼主client发送端口和server服务端口不是同一个
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2