using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
using System.Linq;
using System.Text; using System.Net;
using System.Net.Sockets;
using System.IO;
using System.Threading;
using UnityEngine.UI;
using UnityEngine.Networking; public class ss : MonoBehaviour {
public TcpClient client;
public BinaryReader breader;
public BinaryWriter bwriter;
public NetworkStream netstream;
string abc = "";
string abc0 = "";
Text text;
public bodyController CF;
public float m_speed = 5f;
private static Socket clientSocket;
private static byte[] result = new byte[1024];
// Use this for initialization
void Start () {
CF = GameObject.Find("RimaVirtualBody/rima").GetComponent<bodyController>();
client = new TcpClient("172.20.20.241", 8140);
// client = new TcpClient("127.0.0.1", 8139);
// netstream = client.GetStream();
clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
//IPAddress mIp = IPAddress.Parse("172.20.20.241");
//IPEndPoint ip_end_point = new IPEndPoint(mIp, 8140);
IPAddress mIp = IPAddress.Parse("127.0.0.1");
IPEndPoint ip_end_point = new IPEndPoint(mIp, 8140); clientSocket.Connect(ip_end_point); //breader = new BinaryReader(netstream);
// bwriter = new BinaryWriter(netstream); Thread threadReceive = new Thread(new ThreadStart(ReceiveData));
threadReceive.IsBackground = false;
threadReceive.Start(); //text = GameObject.Find("Canvas/Text").GetComponent<Text>();
}
private void ReceiveData()
{ int length = clientSocket.Receive(result);
//string receiveSting = null;
abc = Encoding.UTF8.GetString(result, 0, length); Debug.Log(abc); } // Update is called once per frame
void Update () {
if(abc!=abc0)
{
if (abc == "聆听") CF.hear();
if (abc == "跳舞") CF.dance();
if (abc == "谈话") CF.talk();
if(abc=="立正") CF.idle(); abc0 = abc;
}
else
{ }
}
}

总是只接受一个字符串,或者把对方发来的接成yige

前者原因是while(true)漏了,后者是因为没关闭clientSocket.Receive,可以clientSocket.close();

        while (true)
{
int length = clientSocket.Receive(result);
//string receiveSting = null;
abc = Encoding.UTF8.GetString(result, 0, length);
Debug.Log(abc);
}

前者改动后可以省略后者的改动。

unity3d C# soket客户端接受失败的更多相关文章

  1. soket客户端程序(一)

    soket客户端主要完成以下步骤: 1.建立soket套接字(将套接字理解为一个通道) 2.建立连接 3.向服务器发送http请求 4.接收得到的数据 5.关闭连接 6.本地处理得到的数据 http: ...

  2. ASP.NET MVC 客户端验证失败后表单仍然提交问题

    客户端验证失败后表单仍然提交问题!导致页面刷新,辛辛苦苦输入的内容荡然无存. 多么奇怪的问题.按道理,验证失败,就应该显示各种错误信息,不会提交表单才对.而现在,错误信息正常显示,但页面却刷新了一遍. ...

  3. FireFly 服务端 Unity3D黑暗世界 客户端 问题

    启动服务端成功截图: 连接成功截图: 测试服务端是否启动成功: 在Web输入:http://localhost:11009/  按回车 (查看cmd启动的服务端 是否多出如下显示) 服务端启动成功.P ...

  4. Unity3D Gamecenter 得分上传失败的处理

    Unity3DGamecenter 得分上传失败的处理. 常常会有种情况是,玩家在地铁或者飞机上没法通过wifi或者3G连接到服务器,从而会导致上传分数失败 解决方法: 这时候需要把得分存在Playe ...

  5. 记一次eureka客户端注册失败的问题

    最近老大给了一台新服务器,做测试用,从装软件开始,到把整个环境搭起来,因为之前没有完成搭过,所以费了几天时间,最后总算是成功跑起来了.昨天早上来更新下项目,在测试服务器上重新发布了一下,结果发现服务注 ...

  6. Subversion客户端接受服务器证书出现“The certificate hostname does not match”的问题

    当使用https://形式的URL连接Apache时,Subversion客户端将会受到两个类型的响应: 1.一个服务器证书 2.一个针对客户端证书的请求 在本人的应用场景主要涉及SVN仓库迁移的操作 ...

  7. unity3d 网页游戏客户端工程构建方案

    将一个项目分为两个编辑环境,一个是editor,一个是target. editor只是策划人员拖拖拽拽编辑场景,打包时程序自动将每个场景资源打包生成一个XXX.unity3d文件,并最后生成一个场景配 ...

  8. NBU客户端安装失败

    该服务器是阿里云上的centos6.8,是用来做oracle服务器,买来之后进行测试,发现没有安装图形化界面,还有部分包也没有安装.在oracle安装完成之后,尝试安装NBU的客户端,结果发生报错:T ...

  9. NFS客户端挂载失败之authenticated unmount request from

    1.故障现象 客户端挂载时夯住,无反应,无报错,如下图: 2.故障前对挂载目录的操作 发现故障前挂载目录被误删除,后通过备份分为恢复 3.故障排查步骤 .检查客户端及服务端防火墙规则 .检查selin ...

随机推荐

  1. 逆波兰(加、减、乘、除、括号)表达式原理及C++代码实现

    当我们输入一个数学表达式,是中缀表达式,我们首先转换为后缀表达式(逆波兰表达式),然后再进行求值. 代码思路: (1)首先对输入的中缀表达式合法性进行判断,bool isStringLegal(con ...

  2. 【LeetCode】1020. Partition Array Into Three Parts With Equal Sum 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 日期 题目地址:https://leetcode.c ...

  3. 【LeetCode】304. Range Sum Query 2D - Immutable 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 预先求和 相似题目 参考资料 日期 题目地址:htt ...

  4. 【LeetCode】766. Toeplitz Matrix 解题报告

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 方法一:两两比较 方法二:切片相等 方法三:判断每条 ...

  5. 【LeetCode】486. Predict the Winner 解题报告(Python)

    [LeetCode]486. Predict the Winner 解题报告(Python) 标签(空格分隔): LeetCode 作者: 负雪明烛 id: fuxuemingzhu 个人博客: ht ...

  6. misc之压缩文件处理

    misc之压缩文件处理 一.预备知识 1.头文件名代码   二.实验环境 1.winhex   三.题目来源 攻防世界杂项:János-the-Ripper.再见李华   实验一 打开题目文件是一个压 ...

  7. Wavelet Transforms

    目录 目标 小波变换 Scaling Functions Wavelet Functions 二者的联系 离散的情形 高效变换 二维的情形 示例 目标 首先, 既然是变换, 那么就是从一个域到另一个域 ...

  8. NPM镜像地址

    NPM镜像地址 npm ---- https://registry.npmjs.org/ cnpm --- http://r.cnpmjs.org/ taobao - https://registry ...

  9. mongodb Windows系统下安装卡死问题

    1.操作环境 MongoBD版本:mongodb-win32-x86_64-2008plus-ssl-4.0.5-signed (4.0.5) 操作系统:Windows 2008 R2_64位 (服务 ...

  10. Storm对DRPC权限控制Version1.0.1

    对Storm的DRPC进行权限控制, 并且设计相应的测试验证. 1.集群安装 请参考Storm集群安装Version1.0.1 2.使用DRPC功能 请参考Storm集群使用DRPC功能Version ...