C# Socket 入门1(转)
1. 服务端程序
1 using System;
2 using System.Collections.Generic;
3 using System.Text;
4 using System.Net.Sockets;
5 using System.Net;
6
7 namespace ConsoleApplication1
8 {
9 class Program
10 {
11 static void Main(string[] args)
12 {
13 // 1.创建套节字
14 Socket sListen = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
15
16 // 2.填充IP
17 IPAddress ip = IPAddress.Parse("127.0.0.1");
18 IPEndPoint ipe = new IPEndPoint(ip, 4321);
19
20 // 3.绑定
21 sListen.Bind(ipe);
22
23 // 4.监听
24 sListen.Listen(2);
25
26 // 5.循环接受客户的连接请求
27 while (true)
28 {
29 Socket clientSocket;
30 try
31 {
32 clientSocket = sListen.Accept();
33 }
34 catch
35 {
36 throw;
37 }
38 // 向客户端发送数据
39 clientSocket.Send(Encoding.Unicode.GetBytes("你好呀!!!!"));
40 }
41 }
42
43 }
44 }
45
好完成,,服务端,
2 现在请看客户端
1 using System;
2 using System.Collections.Generic;
3 using System.Text;
4 using System.Net.Sockets;
5 using System.Net;
6
7 namespace ConsoleApplication2
8 {
9 class Program
10 {
11 static void Main(string[] args)
12 {
13 // 1.创建套节字
14 Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
15
16 // 2.填写远程IP
17 IPAddress ip = IPAddress.Parse("127.0.0.1");
18 IPEndPoint ipe = new IPEndPoint(ip, 4321);
19
20 // 3.连接服务器
21 Console.WriteLine("开始连接服务器....");
22 s.Connect(ipe);
23
24 // 4.接收数据
25 byte[] buffer = new byte[1024];
26 s.Receive(buffer, buffer.Length, SocketFlags.None);
27 var msg = Encoding.Unicode.GetString(buffer);
28 Console.WriteLine("接收消息: {0}", msg);
29
30 Console.ReadKey();
31 }
32 }
33 }
好了, 看看效果 ~~
简单吗 ~~
C# Socket 入门1(转)的更多相关文章
- 从Socket入门到BIO,NIO,multiplexing,AIO
Socket入门 最简单的Server端读取Client端内容的demo public class Server { public static void main(String [] args) t ...
- 从Socket入门到BIO,PIO,NIO,multiplexing,AIO(未完待续)
Socket入门 最简单的Server端读取Client端内容的demo public class Server { public static void main(String [] args) t ...
- python笔记-9(subprocess模块、面向对象、socket入门)
一.subprocess 模块 1.了解os.system()与os.popen的区别及不足 1.1 os.system()可以执行系统指令,将结果直接输出到屏幕,同时可以将指令是否执行成功的状态赋值 ...
- C++ Socket 入门
Socket 入门 前置知识 :计算机网络基础(TCP/IP四层模型) Socket 原意是"插座",在计算机通信领域被翻译为"套接字",以\(\{IP:Por ...
- Socket 入门- 客户端回射程序
结果输出:------------------------------------------------------客户端:xx@xxxxxx:~/Public/C$ ./postBackCli.o ...
- Socket入门Demo
一.简单介绍下Socket编程 申明:.net网络编程 1)什么是Socket编程? Socket编程就是常说的网络通讯编程,套接字编程.一般应用于软件聊天通讯,以及软件与硬件之间的通讯. 通熟 ...
- socket入门基础
#/usr/bin/python #-*- coding:utf-8 -*- import socket ip_port = ('127.0.0.1',111) #创建socket对象 sk = so ...
- socket入门
结构图如下 一个套接字就是socket模块中的socket类的一个实例.实例化时需要3个参数 地址族:默认(socket.AF_INET) 流:默认(socket.SOCK_STREAM) 或数据报 ...
- Socket入门-获取服务器时间实例
daytimetcpsrv.c #include <stdio.h> #include <string.h> #include <stdlib.h> #includ ...
- C# Socket 入门4 UPD 发送结构体(转)
今天我们来学 socket 发送结构体 1. 先看要发送的结构体 using System; using System.Collections.Generic; using System.Text; ...
随机推荐
- MySQL 触发器简单实例
~~语法~~ CREATE TRIGGER <触发器名称> --触发器必须有名字,最多64个字符,可能后面会附有分隔符.它和MySQL中其他对象的命名方式基本相象.{ BEFORE | ...
- [转]"error while loading shared libraries: xxx.so.x" 错误的原因和解决办法
[转]"error while loading shared libraries: xxx.so.x" 错误的原因和解决办法 http://blog.csdn.net/sahuso ...
- EF6 在原有数据库中使用 CodeFirst 总复习(三、重建迁移)
本来原来学的时候,挺顺利的,没想到再次使用,还是遇到很多问题,导致更新失败,所以,只能重建迁移,免得看着乱乱的. 一.删除迁移,将数据恢复到(一)结束状态 1.删除文件夹 2.删除表 3.删除列 4. ...
- 二叉查找树(BST)
二叉查找树(BST):使用中序遍历可以得到一个有序的序列
- jquery ajax 传递js对象到后台
第一种:通过struts接收 (function ($) { $("#btnsave").click(function () { var params = {}; params[& ...
- 20145129 《Java程序设计》第3周学习总结
20145129 <Java程序设计>第3周学习总结 教材学习内容总结 类与对象 定义类 一个原始码中可以有多个类定义,但只有一个是公开类(public),并且文档中的主文档名必须和公开类 ...
- 团队项目--“我爱淘”校园二手书店 NABC分析
本项目的特点之一:可查询功能 NABC分析: N(Need):方便校园里的学生查找自己需要的二手书籍,免了同学想买二手书还得跑到阿姨那里去看. A(Approach):将学生的信息和书籍的信息都存放在 ...
- Spring事务总结
事务是什么? 事务就是用来解决类似问题,事务是一系列的动作,它们综合在一起才是一个完整的工作单元,这些动作必须全部完成,如果有一个失败,那么事务就会回滚到最开始的状态,仿佛什么都没有发生过.在企业级应 ...
- 搭建SpringMVC+MyBatis开发框架五
建立web结构 1.在webapp目录下新建css.img和js文件夹,删除默认的index.jsp文件:  2.在WEB-INF文件夹下建立一个page文件夹,然后在page下新建一个index. ...
- .NET Framework 4.5、4.5.1 和 4.5.2 中的新增功能
.NET Framework 4.5.4.5.1 和 4.5.2 中的新增功能 https://msdn.microsoft.com/zh-cn/library/ms171868.aspx