本帖最后由 丿Show╭尛__儍 于 2013-8-26 20:02 编辑
这代码,这疑问,我还以为代码出错了,一个字母一个字母的早,空格也不放过,可是最后还是无功而反,真郁闷。后来拿了毕老师的代码运行,还是不行,我勒个去,咋搞的。我晕头转向。我就想上论坛求助了,但还是没上。决定在奋战一下。虽然问题是可以运行了,可是{:soso_e126:}.....- package net;
- import java.io.*;
- import java.net.DatagramPacket;
- import java.net.DatagramSocket;
- import java.net.InetAddress;
- /**
- * @param args
- * 要求
- * 编写一个聊天程序。
- 有收数据的部分,和发数据的部分。
- 这两部分需要同时执行。
- 那就需要用到多线程技术。
- */
- class Send implements Runnable {
- private DatagramSocket ds;
- public Send(DatagramSocket ds) {
- this.ds = ds;
- }
- public void run() {
- try {
- BufferedReader br = new BufferedReader(new InputStreamReader(
- System.in));
- String line = null;
- while ((line = br.readLine()) != null)
- {
- if ("886".equals(line))
- break;
- byte[] buf = line.getBytes();
- DatagramPacket dp = new DatagramPacket(buf, buf.length,
- InetAddress.getByName("3K1C53PJAAGBD06"), 53177);
- //---------------------------------------------------------------------------
- //运行结果本机IP是192.168.0.101,前面输入IP不行,后来重启了电脑。我去。竟然101也行,255也行。真活见鬼了
- ds.send(dp);
- }
- } catch (Exception e) {
- // TODO Auto-generated catch block
- throw new RuntimeException("sssss");
- }
- }
- }
- class Rece implements Runnable {
- private DatagramSocket ds;
- public Rece(DatagramSocket ds) {
- this.ds = ds;
- }
- public void run() {
- try {
- while (true) {
- byte[] buf = new byte[1024];
- DatagramPacket dp = new DatagramPacket(buf, buf.length);
- ds.receive(dp);
- String ip = dp.getAddress().getHostAddress();
- String value = new String(dp.getData(), 0, dp.getLength());
- System.out.println(ip + ":" + value);
- }
- } catch (Exception e) {
- // TODO Auto-generated catch block
- throw new RuntimeException("sssss");
- }
- }
- }
- class ChatDemo {
- public static void main(String[] args) throws Exception {
- // TODO Auto-generated method stub
- DatagramSocket sendds = new DatagramSocket();
- DatagramSocket receds = new DatagramSocket(53177);
- new Thread(new Send(sendds)).start();
- new Thread(new Rece(receds)).start();
- }
- }
复制代码 当我写到TCP的时候,你又来了.....(如下图)
[img]file:///C:\Users\Administrator\AppData\Roaming\Tencent\Users\771422264\QQ\WinTemp\RichOle\}{C0Z@[U~R[WGJ58H}@N16O.jpg[/img]
我现在什么话都不想说,只想把你这该死的电脑重启又重启又重启。{:soso_e111:}(我也不懂什么原因反正我重启之后就行了。)
|
|