首页 > 编程语言 >Java(Android)与C++之间的Socket通信

Java(Android)与C++之间的Socket通信

时间:2022-11-19 11:32:16浏览次数:37  
标签:Java Socket C++ char 传输 解析 字节

Java与C++之间的Socket通信,对于小的数据量和控制命令,直接可以封装成json或xml格式,进行传输。但对于文件等大数据量传输,必须要将文件封装成帧,每一帧都设定固定大小的缓冲区,逐帧传输。此时json和xml便不再适用了。


在此过程中要需解决如下问题:


1.Java和C++数据基本类型不同,不仅所占字节数不同(如long型,java占8bytes,C++一般为4bytes)。C++缓冲区一般使用char型,但是java中没有char型,相互之间传输的数据,如何接收解析?


2.C++常用的特殊类型:结构体,如何解析成Java中的类。即使是两者都具有的枚举类型,两者的机制是不一样的,如何进行对接?


3.Java端和C++端,发送给socket的数据形式是什么?char数组型还是字节型C++端又有何种形式进行接收?接收到的数据又如何正确解析出来?


4.字节序问题。Java为大字节序,而大部分PC主机C++都是小字节序,大小字节序和网络字节序相互之间的转化,也是需要考虑的问题。



标签:Java,Socket,C++,char,传输,解析,字节
From: https://blog.51cto.com/u_14682436/5870357

相关文章

  • JavaScript语法_流程控制语句和JavaScript语法_流程控制语句
    JavaScript语法_流程控制语句://1.语句以;结尾,如果一行只有一条语句则;可以省略(不建议)//1.语句以;结尾,如果一行只有一条语句则可以省略(不建议)leta=3......
  • Java面试汇总----概念题
    1、集合:    Vector、Hashtable是线程安全的集合对象,    ArrayList、Vector对象的底层是由数组实现的,    LinkedList是线程不安全的,底层是由链表实现的,    M......
  • Java开发环境安装与配置(干货详细教程)
    Java开发环境安装与配置(干货详细教程) 对于文章中出现的任何错误请大家批评指出,会及时做出修改! 安装JDKJDK是Java语言的软件开发工具包链接Java中国官网https:/......
  • 关于socket 同步通信例子
    写了几个socket通信的项目,现在整理下同步通信方式代码。环境是netcore3.1 服务端第一步:创建Socket实例IPAddressiPAddress=IPAddress.Parse(ip);ServerSocket......
  • JavaScript_对象_Global与DOM简单学习
    JavaScript_对象_GlobalGlobal:全局对象1.特点:全局对象,这个Global中封装的方法不需要对象就可以直接调用。方法名();2.方法......
  • C++ZeroMemory内存清零
      看:https://www.cnblogs.com/liming19680104/p/10499280.html         ......
  • java: 错误: 无效的源发行版:16 - 解决方案
    在使用idea时遇到java:错误:无效的源发行版:16解决方案将语言级别由16改为8即可......
  • java理论考试范围
    知识集群一:Java编程基础一、java编程基础(1)java起源产生面向对象技术(OOT)面向对象(ObjectOriented,OO)技术引起人们的普遍关注传统的过程化程序设计“程序=算......
  • [排序算法] 插入排序 (C++)
    插入排序解释插入排序很好理解,其步骤是:先将第一个数据元素看作是一个有序序列,后面的n-1个数据元素看作是未排序序列。对后面未排序序列中的第一个数据元素在这个有序序......
  • 第一个java程序
    HelloWorld随便新建一个文件夹,存放代码新建一个java文件文件后缀名为.javaHello.java【注意点】系统可能没有显示文件后缀名,我们需要手动打开编写代码......