资源简介
基于TCP的Socket编程服务器和客户端代码
代码片段和文件信息
import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;
import java.net.UnknownHostException;
import org.json.JSONobject;
public class File_client {
public static void main(String[] args) throws Exception {
Socket clientSocket = onOpen();
if(null!=clientSocket){//连接建立
JSONobject jsonData = new JSONobject(Constants.onData());
if(onSend(clientSocket jsonData.toString().getBytes())){
onMessage(clientSocketjsonData.toString().getBytes());//接受服务器数据返回信息-
onClose(clientSocket);
}
}
}
//打开连接
public static Socket onOpen(){
System.out.println(“onOpen..........“);
Socket clientSocket = null;
try {
clientSocket = new Socket(“localhost“ 6789);
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return clientSocket;
}
//消息处理->接受服务器传回数据
public static String onMessage(Socket clientSocketbyte[] jsonData) throws Exception {
System.out.println(“onMessage..........“);
// InputStreamReader isr = new InputStreamReader(clientSocket.getInputStream());
// BufferedReader inFromServer = new BufferedReader(isr);
// String inData = inFromServer.readLine();
// System.out.println(“接受服务器响应数据:“+inData);
// clientSocket.getOutputStream();
// int totalByteRcvd = 0;
// int byteRcvd;
// try {
// while (totalByteRcvd < jsonData.length) {
// if((byteRcvd=clientSocket.getInputStream().read(jsonData totalByteRcvd jsonData.length-totalByteRcvd))==-1){
//// throw new SocketException(“连接关闭了!“);
// return jsonData.toString();
// }
// totalByteRcvd+=byteRcvd;
// }
// } catch (SocketException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// } catch (IOException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
//输出消息
// System.out.println(“收到的消息是:“+new String(jsonData));
// String content = null;
// StringBuilder sb = new StringBuilder();
// try {
// BufferedReader inFromServer = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
// content = inFromServer.readLine();
// if(null!=content){
// try {
// File file = new File(“D://client.txt“);
// if (!file.exists()) {
// file.createNewFile();
// }
// FileOutputStream os = new FileOutputStream(file);
// BufferedOutputStream bos = new BufferedOutputStream(os);
// bos.write(content.getBytes());
// bos.close();
// os.close();
// } catch (Exception e) {
// e.printStackTrace();
// }
// }
// } catch (IOException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
return jsonData.toString();
}
//发送消息客户端往服务器发送消息
public static boolean onSend(Socket clientSocketbyte[] jsonData){
System.out.println(“onSend..........“);
OutputStream os;
try {
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3682 2017-06-14 09:43 File_client.java
目录 0 2017-06-14 10:24 __MACOSX\
文件 172 2017-06-14 09:43 __MACOSX\._File_client.java
文件 2033 2017-06-14 09:43 File_server.java
文件 172 2017-06-14 09:43 __MACOSX\._File_server.java
相关资源
- 校园停车项目
- newgcWebSockets 4.1.0.Full.Source稳定版
- TCP/IP网络编程 尹圣雨源代码+PDF书籍
- TCP_IP网络实验程序篇
- 2019最新版eclipse.rar
-
spring-fr
amework-4.1.7.RELEASE - 基于QT的socket TCP通信原创
- ssm模糊查询demo
- tcp/ip详解卷1第二版中英文合集)
- vue仿小米商城demo
- ECLIPSE写的一个学生信息管理系统网页
- 统计学第6版
- jdk-12.0.1_windows-x64_bin.exe
- Spring Boot 2企业应用实战.pdf
- CSocket多线程聊天室源码
- 城市公交查询系统.rar
- 数据结构与算法之美
- TCP/IP网络编程 完整版本
- 网上资源管理系统ssm-源码
- [TCP/IP指南(卷1)底层核心协议_清晰
- 基于SSM的校园门户网站设计与实现
- 基于websocket的即时通讯H5App源码.rar
- TCP IP Architecture Design and Implementation
- 基于TCP协议的五子棋
- TCP/IP通信实现局域网上位机对下位机
- TCP/IP路由技术(第二卷)
- 仿oppo网站
- QT TCP文件传输
- QT下多线程 UDP socket
- 微信公众号开发消息加解密工具类
评论
共有 条评论