导航
全部
Ada助手
登录/注册
社区
网络编程
帖子详情
用TCP通讯时需要转换字节序,可如果我的数据是从文件里读出来的,该怎么转换啊?
qingfeng_happy5
2009-12-08 03:49:51
在进行TCP通讯时,需要进行主机字节序和网络字节序的转换。可如果我要发送的数据是调用ReadFile()函数从文件里读出来的,也就是读出来的数据都是保存到char[]数组里的,那我用send函数发送时还需要转换字节序吗?
...全文
给本帖投票
655
5
打赏
收藏
用TCP通讯时需要转换字节序,可如果我的数据是从文件里读出来的,该怎么转换啊?
在进行TCP通讯时,需要进行主机字节序和网络字节序的转换。可如果我要发送的数据是调用ReadFile()函数从文件里读出来的,也就是读出来的数据都是保存到char[]数组里的,那我用send函数发送时还需要转换字节序吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
发表回复
按下Enter换行,Ctrl+Enter发表内容
编辑
预览
轻敲空格完成输入
显示为
卡片
标题
链接
打赏红包
nintendo_dskay
2009-12-09
打赏
举报
回复
[Quote=引用 1 楼 vieri_ch 的回复:]
如果只是字节流,不需要转换
一般是ip地址,端口号码,传输一些整数型的参数,才需要做转换
字节流不需要。如果头部记录了大小的,那么这个记录了大小的整型数需要转换
[/Quote]
up,一般传输的内容以字节流的方式传输的话是不需要考虑转换成网络字节序的。
像IP和PORT这种就需要转换,可以用htonl和htons这两个函数来进行转换,前者是将长整型转换成网络字节序,后者是将短整型转换。
sboom
2009-12-08
打赏
举报
回复
asn.1
coyer
2009-12-08
打赏
举报
回复
需要让网络函数认识的数据,才需要转换,比如ip,端口号。而实际发送的数据,是没有转换要求的。
从文件里面读取出来的数据是你自己的数据吧,这些数据转换不转换看你自己,反正发出去是什么样子,接收到就还是什么样子。
eyodo8
2009-12-08
打赏
举报
回复
协议解析方面的数字类型需要转换,负载字节流的不需要关心
尘雨
2009-12-08
打赏
举报
回复
如果只是字节流,不需要转换
一般是ip地址,端口号码,传输一些整数型的参数,才需要做转换
字节流不需要。如果头部记录了大小的,那么这个记录了大小的整型数需要转换
网络
字节序
与主机
字节序
问题:在进行
TCP
通讯
时
,
需要
进行主机
字节序
和网络
字节序
的
转换
。可如果我要发送的
数据
是调用ReadFile()函数
从文件
里
读出来
的,也就是
读出来
的
数据
都是保存到char[]数组
里
的,那我用send函数发送
时
还
需要
转换
字节序
吗? 回答: 协议解析方面的数字类型
需要
转换
,负载字节流的不
需要
关心。
需要
让网络函数认识的
数据
,才
需要
转换
,比如ip,端口号。而实际发送的
数据
,是没有
转换
要求的。
网络通信中
字节序
转换
问题
网络通信中
字节序
转换
问题
数据
包组装过程(发送
数据
前)中,需将协议头(以太网对、IP头、ARP头、UDP头、
TCP
头等)中各字段,由主机序转为网络序。
数据
包拆解过程(
数据
包递交应用前)中,需将协议头中各字段,由网络序转为主机序。 注意: 1.
转换
以协议头中的字段为单位,针对协议头中的每个字段,进行字节反转,即反转以字节(byte)为单位,而非以字节中的位(bit)为单位。因此,
socket大端小端
转换
总结(临
时
摘取,后补原创代码)
以下内容总结为网上摘取: 在进行
TCP
通讯
时
,
需要
进行主机
字节序
和网络字节的
转换
。可如果我要发送的
数据
是调用ReadFile()函数
从文件
里
读出来
的,也就是
读出来
的
数据
都是保存到char[]数组
里
的,那我用send函数发送
时
还
需要
转换
字节序
吗? ——如果只是字节流,不
需要
转换
。一般是ip地址,端口号码,传输一些整型数的参数,才
需要
做
转换
,字节流不
需要
。如果头部记录了大小的,那...
socket 及
字节序
转换
(嵌入式学习)
1、1982 - Berkeley Software Distributions 操作系统引入了socket作为本地进程之间通信的接口2、1986 - Berkeley 扩展了socket 接口,使之支持UNIX 下的
TCP
/IP 通信3、现在很多应用 (FTP, Telnet) 都依赖这一接口。
网络编程 day01 (linux ) 网络
字节序
与 主机
字节序
的转化函数 ,与相关的知识 。
htonl( );主机
字节序
数值
转换
为 网络
字节序
数值 ntohl();网络
字节序
数字 转化为 主机
字节序
数字 inet_aton() 将strptr所指的字符串
转换
成32位的网络
字节序
二进制值的数字 inet_addr() 函数 主机
字节序
的字符串
转换
为 网络
字节序
的数值 inet_ntoa 将32位网络
字节序
二进制地址
转换
成点分十进制的字符串。 inet_pton() 函数 主机
字节序
的字符串
转换
为 网络
字节序
的数值 inet_ntop() 函数 网络
字节序
的数值
转换
为......
网络编程
18,363
社区成员
64,187
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
积分榜
荣誉榜
原力榜
学习榜
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章