利用Java的socket编程,实现本地聊天(只模拟发送数字)

源码如下:

package myqq;

import java.io.BufferedInputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;

public class Chat {
public static void main(String[] args){

    SendMessage sendMessage = new SendMessage();
    ReceiptMessage receiptMessage = new ReceiptMessage();
    sendMessage.start();
    receiptMessage.start();
}

}

class SendMessage extends Thread{

public void run() {
    System.out.println("发送线程已启动!");
    try{
        Socket c = new Socket("127.0.0.1", 9000);
        Scanner input = new Scanner(System.in);
        OutputStream os = c.getOutputStream();
        int msg = 0;            
        while(msg!=886){
            msg = input.nextInt();
            os.write(msg);
        }
        os.close();
        c.close();
    }catch (Exception e) {
        System.out.println("服务器异常,停止服务");
        e.printStackTrace();
    }
}   

}

class ReceiptMessage extends Thread{

public void run() {
    System.out.println("接收线程已启动!");
    try{
        ServerSocket ss = new ServerSocket(9000);
        System.out.println("服务器端开始监听9000端口");
        //获取输入流
        Socket s = null;
        InputStream is = new BufferedInputStream(null);
        int msg = 0;
        do{
            s = ss.accept();
            is = s.getInputStream();
            msg = is.read();
            System.out.println(msg);    
        }
        while(msg!=886);
        is.close();
        s.close();

    }catch (Exception e) {
        System.out.println("服务器异常,停止服务");
        e.printStackTrace();
    }
}

}

问题:编译能通过,执行时报错图片说明
这个什么问题啊?

2个回答

把之前的class删除掉,只留下.java文件,然后编译的时候带包名编译,就ok了,运行的时候,带包名运行,问题解决!带包编译我忘了命令了,你可以百度下带包编译!

方法1:
删掉Chat.java文件中的 package myqq;
然后再次
javac Chat.java
java Chat

方法2:
不改源文件
d:\ Java md d:\myqq
d:\ Java mv d:\Java\Chat.class d:\Java\myqq\Chat.class
d:\ Java java myqq.Chat

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
java socket编程(2)——利用socket实现聊天之单聊

上一篇 java socket编程(1)——利用socket实现聊天之消息推送中我们讲到如何使用socket让服务器和客户端之间传递消息,达到推送消息的目的,接下来我将写出如何让服务器建立客户端与客户端之间的通讯。其实就是建立一个一对一的聊天通讯。与上一篇实现消息推送的代码有些不同,在它上面加以修改的。 如果没有提到的方法或者类则和上一篇一模一样。

java socket编程(3)——利用socket实现聊天之群聊

上一篇 java socket编程(2)——利用socket实现聊天之单聊 中我们讲到如何使用socket让客户端和客户端之间传递消息,实现一对一的聊天,接下来我将写出如何让服务器建立客户端与客户端之间的一对多通讯。还是在原有的代码上加以修改,增加功能。1,修改实体类(服务器端和客户端的实体类是一样的)1,UserGroupBean 聊天群表public class UserGroupBean i

Socket编程(三)---仿QQ多人聊天实例

这次的实例,目的是为了模仿QQ上和好友聊天的功能,也就是用户登录后,点击用户头像,发送信息,好友就会接受到信息。

java socket编程(1)——利用socket实现聊天之消息推送

网上已经有很多利用socket实现聊天的例子了,但是我看过很多,多多少有一些问题存在。 这里我将实现一个比较完整的聊天例子,并解释其中的逻辑。

java socket编程(4)——利用socket实现聊天之上传文件

上一篇 java socket编程(3)——利用socket实现聊天之群聊 中我们讲到如何使用socket让客户端和客户端之间传递消息,实现一对多的聊天,接下来我将写出如何让服务器建立客户端与客户端之间的文件流传输通道。还是在原有的代码上加以修改,增加功能。

java用ServerSocket类结合io流实现一对一聊天(java实现简单的TCP聊天程序只能用telnet连接后方可使用)

粗略写了点代码,其实这种在流的实现方式里面可以用好多种不同流方面的类,我这没用最简单的,而是那边弄个流这边弄个流,好让自己熟悉不同流的类,希望大家别绕晕哈。可能对新手会有点绕,不过久了应该就会了,代码不唯一,功能达到了就行了,由于时间关系我就没怎么去优化了,代码如下: 本代码是先从服务端向客户端发送消息,然后客户端再向服务端发送,若有一方不回复则不能继续聊天。这是一个简单的TCP聊天程序。 i

利用LINUX FIFO命名管道技术实现双向聊天的C语言源代码

/**************************************************************************/ //本程序是利用LINUX FIFO命名管道技术实现双向聊天的C语言源代码。 //优点:代码简洁明了。 //其中: //chat.c: 聊天源代码。 //makefile: 利用宏定义,把一个源码生成两个不同的可执行程序。 // //使用: //make clean 清除上次编译生成的结果文件。 //make 重新编译生成两个可执行程序。./a_chat和./b_chat的执行顺序没有先后。 //作者:david.q@sz 2012-8-11 2263537@qq.com /**************************************************************************/

基于java socket的聊天-群聊

详细讲解,博客地址:http://blog.csdn.net/yehui928186846/article/details/52605513

fifo实现本地简单聊天程序

最近做了一个小练习,要求如下: 1.设计协议 2.客户端只写公共管道,向服务端发信息 3.客户端只读私有管道,接收信息。 4.服务端维护用户登录列表 详细如图: 1.server#include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <s

java socket 实现get post 请求

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.net.Socket; import java.ne

Java Socket编程(模拟多用户聊天室)

Server.java import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.OutputStreamWriter;

java实现socket编程网络通信多人聊天室

java实现socket编程网络通信多人聊天室,可以实现简单的多人聊天功能。适合初学的大二,大三学生,学习。

Socket编程一实现简易的聊天功能以及文件传输

干程序是一件枯燥重复的事,每当感到内心浮躁的时候,我就会找小说来看。我从小就喜爱看武侠小说,一直有着武侠梦。从金庸,古龙,梁羽生系列到凤歌(昆仑),孙晓(英雄志)以及萧鼎的(诛仙)让我领略着不一样的江湖。如果你有好看的武侠系列小说,给我留言哦。题外话就扯这么多了,接着还是上技术。看看今天实现的功能效果图:可以这里使用多台手机进行通讯,【凤歌】我采用的服务器发送消息。是不是只有发送消息,有些显得太单调

Java Socket 聊天程序(图形界面)

实现Java Socket聊天多线程编程,图形化界面,多人聊天(群聊),私人聊天,是基于本地模拟的Java聊天程序。 Java Socket聊天程序是我用了三天的时间写出来,用Netbeans建的工程,图形化界面是Netbeans拖拉出来的,自己能够做出这种功能挺满意的,也有一些bug,所以上传给大家一起分享,希望像我一样的Java学习者能够少走弯路。 与同道之人一起学习Java。

java网络编程,通过TCP,Socket实现多对一的局域网聊天室

java网络编程,通过TCP,Socket实现多对一的局域网聊天室 可以实现多个客户端连接服务器,服务器接收到信息就会把信息广播到所有的客户端   这是服务器端的代码 View Code import java.awt.BorderLayout; import java.awt.FlowLayout; import java.awt.event.A

使用Java Socket模拟实现聊天室

        使用Java Socket模拟实现了一个聊天室,实现了基本的私聊以及群聊。分为服务器端和客户端,下面我来介绍一下实现的步骤。服务器端        服务器端是聊天室的核心所在,主要用来处理客户端的请求,先来看一下服务器端的主方法: public static void main(String[] args) { try { Execut...

Socket编程,简单的类似qq聊天,可以两台电脑互通

Socket编程,简单的类似qq聊天,可以两台电脑互通 源代码下载地址:http://www.zuidaima.com/share/1550463676648448.htm

TCP、UDP练习题 (UDP聊天程序、TCP上传文本文件和图片文件)

TCP、UDP编程练习 TCP ☆上传文本文件 读取一个本地文本文件,将数据发送到服务端,服务器端对数据进行存储。 存储完毕后,给客户端一个提示。 1、解题思路 客户端:(1) 创建Socket对象----用服务器的ip+端口号 (2)读取文件内容 (3)通过socket把内容发送给服务器端(把socket中的输出流包装成“打印流”来进行发送文本,是一种比较安全的输出方式

java 使用TCP实现单聊的功能。(客户端和服务端聊天)

需求: 使用TCP实现单聊的功能。(客户端和服务端聊天) 代码: package com.hcq.main2; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.Ou

利用TCP协议,实现基于Socket的小聊天程序(初级版)

TCP TCP (Transmission Control Protocol)属于传输层协议。其中TCP提供IP环境下的数据可靠传输,它提供的服务包括数据流传送、可靠性、有效流控、全双工操作和多路复用。通过面向连接、端到端和可靠的数据包发送。通俗说,TCP支持的应用协议主要有:Telnet、FTP、SMTP等 TCP是面向对象的连接,是安全可靠的,是基于连接的协议,也就是说,在正式收发数据

Java网络编程,通过TCP,Socket实现多对一的局域网聊天室

java网络编程,通过TCP,Socket实现多对一的局域网聊天室 可以实现多个客户端连接服务器,服务器接收到信息就会把信息广播到所有的客户端

Socket编程 ------ 模拟QQ聊天工具

模拟QQ聊天 一、要求 1、一个服务器可以与多个用户同时通讯 2、用户可以通过服务器与用户之间通讯 3、用户可以选择和所有人发消息,也可以选择和某个用户单独发消息 4、服务器要显示当前所有在线人员 5、用户要显示当前在线的人员 6、当有新用户登录时或在线用户退出时,服务器要向所有其他在线用户发送提示信息,并且服务器也要显示相应的提示信息 7、不能有相同的用户名同时登陆 8

Java Socket编程 - 基于TCP方式的客户服务器聊天程序

本文讲演示如何通过Java Socket建立C/S方式的聊天程序。实现的功能 主要包括如下几个方面: 1. 用户登录,在线用户列表刷新 2.客户端与服务器的TCP连接,实现消息的发送与接受 3.Java Swing与多线程编程技巧 一个整体的Class关系图如下: 程序实现的服务器端UI如下: 一个JList组件用来显示在线的所有用户,一个JTextArea组件用

javasocket实现简易聊天室

一个简单的聊天室程序: 客户端: public class ChatClient extends JFrame{ /** * 聊天室客户端 */ private static final long serialVersionUID = 1L; Socket socket; PrintWriter pWriter; BufferedRea

JAVA Socket编程——基于ServerSocket建立聊天服务器

该篇博客写一下关于Socket编程,java实现基于ServerSocket的聊天服务器。可实现客户端与客户端之间的群聊(win下cmd命令行模拟客户端) 该篇博客目录 1、Socket介绍 2、Socket编程在客户端与服务端的使用注意 3、java实现基于ServerSocket的聊天服务器 一、Socket介绍 Socket类实现客户端套接字(也...

java网络socket编程(七)之java中NIO实现聊天系统的群聊功能

1.服务器端代码 import java.io.IOException; import java.net.InetSocketAddress; import java.net.ServerSocket; import java.nio.ByteBuffer; import java.nio.channels.Channel; import java.nio.channels.Selectio

java网络编程一:模拟qq聊天功能,实现一对一聊天

1、socket和serverSocket通信简单介绍如下,注意客户端与服务器端是怎么交换数据的     2、模拟qq聊天功能,实现客户端与服务器(一对一)的聊天功能 服务器端代码: view plain "font-size:16px;">package demo.net;      import java.io.DataInp

java之模拟QQ聊天软件(简单实现)

 图5-1 服务器界面  图5-2服务器启动界面  图5-3用户登录界面(用户:巴黎夜雨)  图5-4 创建昵称界面(用户:巴黎夜雨)  图5-5 登录过程界面(用户:巴黎夜雨)  图5-6 登录成功界面(用户:巴黎夜雨)  图5-7用户登录界面(用户:甜心百分百)  图5-8 创建昵称界面(用户:甜心百分百)  图5-9 登录过程界面(用户:甜心百分百)  图5-10 登录成功界面(用户:甜心百...

java Socket实现多人群聊与私聊

关于Socket套接字的一些基本知识与认识可以参见上一篇或自行查阅。 ServerSocket和Socket实现群聊与私聊涉及到多线程编程,实现过程的重点是利用Socket通信的原理,即不断的在服务端和客户端创建输入输出流来相互传递、交换数据等以达到通信的目的。具体实现如下: 服务端: import java.io.*; import java.net.*; import java.util

使用socket与线程实现简单机器人聊天

Socket的英文原义称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,可以用来实现不同虚拟机或不同计算机之间的通信。在Internet上的主机一般运行了多个服务软件,同时提供几种服务。每种服务都打开一个Socket,并绑定到一个端口上,不同的端口对应于不同的服务。 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。 以下是代码示例(部分代

java用socket和serversocket实现一对一聊天(java实现简单的TCP聊天程序)

在上次发表类似文章的基础上做了一点手脚,这次可以直接运行两个控制台,不用再去用telnet IP端口了,这个可以直接在eclipse分别执行服务器端类和客户端类,然后在客户端和服务端上进行交互。更为方便。我的代码实现如下: 首先我的文件结构是 在ServerDemo.java中编写以下代码: package com.jiaxun.net; import java.io.IOExce

基于UDP 的QQ聊天程序 二

<br />/* ************************************************************************<br /> *       Filename:  qq_thread.c<br /> *    Description:  <br /> *        Version:  1.0<br /> *        Created:  2010年07月16日 17时03分34秒<br /> *       Revision:  none<br />

套接字(socket)编程简单实现server-client聊天程序

1、socket      在TCP/IP协议中,一个IP地址标识网络通讯中唯一一台主机,而一个IP地址+一个TCP(或UDP)端口号就可以标识网络通讯中的一个进程,此时的IP地址+端口号即称为socket。       内存中的多字节数据相对于内存地址有大小端之分,磁盘文件中的多字节数据相对于文件中的偏移地址也有大小端之分,网络数据流同样也有大小端之分:先发出的数据是低地址,后发出的数据是搞地质

JAVA通过Swing和socket编程实现简易点对点聊天

一、窗口的制作;因为有了myeclipse所以窗口界面的制作就不需要手工写代码了。下面是我做的效果图: 二、界面做出来了,接下来就是写实现功能的代码了。        首先,整理下思路,我们想实现点对点的聊天,功能像QQ那样随意的发信息(这是想实现的功能)。要传输数据就涉及到网络编程。这里我是通过JAVA的socket实现。我们想发送信息,我们就得有发送信息的代码; 我的代码

用Socket编程实现电子邮件的发送

用Socket编程实现电子邮件的发送

socket 编程 TCP 实现简单聊天功能

各个主要函数的功能: 1、socket int socket(int domain, int type,int protocol)            domain:说明我们网络程序所在的主机采用的通讯协族(AF_UNIX  和  AF_INET  等).  AF_UNIX 只能够用于单一的 Unix 系统进程间通信,而 AF_INET 是针对 Internet 的,因而可以允 许在

TCP实现的聊天功能(java)实现

一个简单的TCP实现的聊天功能,客户端输入数据,服务器端接收数据,并打印出客户端发来的数据。

Java WebSocket编程与网页简易聊天室

在webSocket还未引入前,许多开发人员通过各种非正规手段来完成更新网站的最新信息和到所有当前访问者的任务,其中一种手段就是通过浏览器向服务器轮询更新,但这种手段的网络延迟比较明显,其用户体验比较差。而webSocket协议的引入比较好的解决这种问题,webSocket是一种网络协议,它允许两个相连的端在一个TCP连接上进行全双工通讯。它主要用来作为托管在Web服务器上的Web应用和浏览器之间的

socket 实现点对点发送消息

socket:套接字,描述 ip 和 port;socket 在建立网络连接时使用;通过socket可以向网络发送请求以及应答网络请求 serverSocket:主要应用于服务器端,监听 socket 连接 具体示例代码如下: package socket;import java.io.BufferedReader; import java.io.IOException; import java.i

Java之--------Socket编程(UDP简单聊天室)

我们在生活中很容易能够使用聊天软件,其实很简单,当然功能也是很简单的,使用UDP就可以实现。这个程序,加上界面,就可以做出简单的聊天系统了

Java socket编程实现两台主机间的通信

Java socket编程实现两台主机间的通信

Java版socket编程实现带语音聊天和文件传送功能的局域网聊天工具

本资源是本人前面发过的一个局域网聊天工具的升级版。主要在界面上进行了美化,并添加了语音聊天的功能。具体功能有: 1.采用了全新的界面风格(新增) 2.实现了基本文字聊天功能 3.实现了基本文件传送功能 4.实现了发送窗口抖动的功能 5.实现了语音聊天的功能(新增) 资源内容包括源程序和打包后的可执行jar文件,以及要用到的所有jar包; 代码保证可用,如有问题请留言,代码较规范,结构清晰,相信对学习java socket编程和swing界面开发的朋友有一定的帮助。 注:main函数在MainFrame类

Socket编程------模拟QQ聊天(TCP)

模拟QQ聊天 一、要求 1、一个服务器可以与多个用户同时通讯 2、用户可以通过服务器与用户之间通讯 3、用户可以选择和所有人发消息,也可以选择和某个用户单独发消息 4、服务器要显示当前所有在线人员 5、用户要显示当前在线的人员 6、当有新用户登录时或在线用户退出时,服务器要向所有其他在线用户发送提示信息,并且服务器也要显示相应的提示信息 7、不能

Socket编程服务端和客户端互相通信,实现简单的聊天

socket实现聊天功能

使用MulticastSocket实现多点广播(实现多人聊天室)

使用MulticastSocket实现多点广播: (1)DatagramSocket只允许数据报发给指定的目标地址,而MulticastSocket可以将数据报以广播的方式发送到多个客户端。 (2)IP协议为多点广播提供了这批特殊的IP地址,这些IP地址的范围是:224.0.0.0至239.255.255.255. (3)MulticastSocket类时实现多点广播的关键,当Multicas

使用Scala模拟简单的RPC通信,Socket编程

初步尝试使用Scala编程,还有很多不熟悉的地方,其实Scala的socket编程也是调用的java的api,所以基本上和java的代码大同小异。 实现功能大体如下:客户端发送一个序列化参数,里面以空格分割几个参数,在服务端进行接收,并分割字符串,获取到一个字符串数组,然后对其进行模式匹配,返回不同的处理结果,写入到输出流中,客户端获取到返回的结果并打印。 代码如下: 客户端代码: pac

Java一步一脚印—通过简单的TCP网络编程实现局域网的聊天对话

import java.awt.*; import java.awt.Event; import java.awt.Window; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowEvent; import java.awt.event.Wind

java Socket实现聊天程序

java聊天室程序源码 2 需求分析 2.1 业务需求 1. 与聊天室成员一起聊天。 2. 可以与聊天室成员私聊。 3. 可以改变聊天内容风格。 4. 用户注册(含头像)、登录。 5. 服务器监控聊天内容。 6. 服务器过滤非法内容。 7. 服务器发送通知。 8. 服务器踢人。 9. 保存服务器日志。 10.保存用户聊天信息。 2.2 系统功能模块 2.2.1 服务器端 1.处理用户注册 2.处理用户登录 3.处理用户发送信息 4.处理用户得到信息 5.处理用户退出 2.2.2 客户端 1.用户注册界面及结果 2.用户登录界面及结果 3.用户发送信息界面及结果 4.用户得到信息界面及结果 5.用户退出界面及结果 2.3 性能需求 运行环境:Windows 9x、2000、xp、2003,Linux 必要环境:JDK 1.5 以上 硬件环境:CPU 400MHz以上,内存64MB以上 3.1.2 客户端结构 ChatClient.java 为客户端程序启动类,负责客户端的启动和退出。 Login.java 为客户端程序登录界面,负责用户帐号信息的验证与反馈。 Register.java 为客户端程序注册界面,负责用户帐号信息的注册验证与反馈。 ChatRoom.java 为客户端程序聊天室主界面,负责接收、发送聊天内容与服务器端的Connection.java 亲密合作。 Windowclose 为ChatRoom.java的内部类,负责监听聊天室界面的操作,当用户退出时返回给服务器信息。 Clock.java 为客户端程序的一个小程序,实现的一个石英钟功能。 3. 2 系统实现原理 当用户聊天时,将当前用户名、聊天对象、聊天内容、聊天语气和是否私聊进行封装,然后与服务器建立Socket连接,再用对象输出流包装Socket的输出流将聊天信息对象发送给服务器端 当用户发送聊天信息时,服务端将会收到客户端用Socket传输过来的聊天信息对象,然后将其强制转换为Chat对象,并将本次用户的聊天信息对象添加到聊天对象集Message中,以供所有聊天用户访问。 接收用户的聊天信息是由多线程技术实现的,因为客户端必须时时关注更新服务器上是否有最新消息,在本程序中设定的是3秒刷新服务器一次,如果间隔时间太短将会增加客户端与服务器端的通信负担,而间隔时间长就会让人感觉没有时效性,所以经过权衡后认为3秒最佳,因为每个用户都不可能在3秒内连续发送信息。 当每次用户接收到聊天信息后将会开始分析聊天信息然后将适合自己的信息人性化地显示在聊天信息界面上。 4.1.1 问题陈述 1.接受用户注册信息并保存在一个基于文件的对象型数据库。 2.能够允许注册过的用户登陆聊天界面并可以聊天。 3.能够接受私聊信息并发送给特定的用户。 4.服务器运行在自定义的端口上#1001。 5.服务器监控用户列表和用户聊天信息(私聊除外)。 6.服务器踢人,发送通知。 7.服务器保存日志。

Java使用socket网络编程实现多人聊天室

前言:套接字(socket)编程能够实现服务器和客户端的通信,以下通过Socket编程实现多人聊天室。 程序展示: 界面类1.客户端界面 ClientView.javapublic class ClientView extends JFrame implements ActionListener, KeyListener, Runnable { private JTextArea t

Socket编程实现简易聊天室

1.Socket基础知识   Socket(套接字)用于描述IP地址和端口,是通信链的句柄,应用程序可以通过Socket向网络发出请求或者应答网络请求。   Socket是支持TCP/IP协议的网络通信的基本操作单元,是对网络通信过程中端点的抽象表示,包含了进行网络通信所必需的5种信息:连接所使用的协议、本地主机的IP地址、本地进程的协议端口、远地主机的IP地址以及远地进程的协议端口。

相关热词 c#框体中的退出函数 c# 按钮透明背景 c# idl 混编出错 c#在位置0处没有任何行 c# 循环给数组插入数据 c# 多线程死锁的例子 c# 钉钉读取员工排班 c# label 不显示 c#裁剪影像 c#工作进程更新ui
立即提问