Socket编程
来源:互联网 发布:开淘宝网店有赚钱的吗 编辑:程序博客网 时间:2024/06/05 20:31
最近看一篇关于Socket编程的文章感觉不错,进“引进”过来了。呵呵
客户端代码:
package com.sinovatech.zjusercenter.util;import java.io.DataOutputStream;import java.io.File;import java.io.FileInputStream;import java.net.InetSocketAddress;import java.net.Socket;public class Text {// 客户端发送类public static String clientip = "127.0.0.1";public static int port = 33456;public static void main(String[] args) {int length = 0;byte[] sendBytes = null;Socket socket = null;DataOutputStream dos = null;FileInputStream fis = null;try {try {socket = new Socket();socket.connect(new InetSocketAddress(clientip, port),30 * 1000);dos = new DataOutputStream(socket.getOutputStream());File file = new File("F:\\reader.txt");// 找到文件fis = new FileInputStream(file);sendBytes = new byte[1024 * 4];while ((length = fis.read(sendBytes, 0, sendBytes.length)) > 0) {dos.write(sendBytes, 0, length); // 将文件的数据写进去。dos.flush();}} finally {if (dos != null)dos.close();if (fis != null)fis.close();if (socket != null)socket.close();}} catch (Exception e) {e.printStackTrace();}}}服务端代码:package com.sinovatech.zjusercenter.util;import java.io.DataInputStream;import java.io.File;import java.io.FileOutputStream;import java.net.ServerSocket;import java.net.Socket;public class TestService implements Runnable { // 服务器监听类public static void main(String[] args) {try {final ServerSocket server = new ServerSocket(Text.port);Thread th = new Thread(new Runnable() {public void run() {while (true) {try {System.out.println("开始监听...");Socket socket = server.accept();System.out.println("有链接");receiveFile(socket);} catch (Exception e) {}}}});th.run(); // 启动线程运行} catch (Exception e) {e.printStackTrace();}}public void run() {}public static void receiveFile(Socket socket) {byte[] inputByte = null;int length = 0;DataInputStream dis = null;FileOutputStream fos = null;try {try {dis = new DataInputStream(socket.getInputStream());System.out.println(dis.readByte() + "{}{}");fos = new FileOutputStream(new File("E:\\readerService.txt")); // 创建一个文件存放客户端发送的数据inputByte = new byte[1024 * 4];System.out.println("开始接收数据...");while ((length = dis.read(inputByte, 0, inputByte.length)) > 0) {fos.write(inputByte, 0, length);fos.flush();}System.out.println("完成接收");} finally {if (fos != null)fos.close();if (dis != null)dis.close();if (socket != null)socket.close();}} catch (Exception e) {}}}
- socket编程--socket基本概念
- socket编程--socket基本概念
- socket编程
- socket编程
- Socket 编程
- socket编程
- Socket编程
- Socket编程
- Socket编程
- Socket编程
- SOCKET编程
- socket编程
- Socket编程
- socket编程
- Socket 编程
- Socket 编程
- socket 编程
- socket编程
- Qt中使用Cairo
- Linux上的ftp配置,及错误500 OOPS: could not bind listening IPv4 socket解决
- c++操作word接口
- http://acm.nyist.net/JudgeOnline/problem.php?pid=117&&树状数组求逆序数+离散化
- Poem: I Like For You To Be Still
- Socket编程
- Nginx 的 server_names_hash_bucket_size 问题
- 用 jQuery写的可编辑的表格
- Visual C++操纵MS Word
- 九选三不及格,心情沉痛ing
- Linux设备驱动开发学习步骤
- * java版HashMap,大数据量时效率很低,建议1000条数据以下使用
- git使用总结
- 网管工具之cacti