这个问题是纯粹的teoretical,而不是正确的做法,但我们需要将char'x'转换为网络格式吗?我在所有情况下都会被吸引:总是/有时/从不 我个人认为我应该但我需要确定,比你。通过套接字发送的字符
0
A
回答
3
没有,char是一个字节值,因此字节顺序并不重要
3
当你想它(字节序,再用ntohl ntohs和,等...),没有。
基本上,我应该提出一个非网络限制的警告:任何未附加其编码的字符串都是不可读的。
假设您通过网络发送/存储或不存储字符串“Français”,'ç'必须使用字符编码进行编码。不指定字符编码意味着如果您使用utf8对其进行编码,但您的读者认为它是latin1,则它可以被读为“Franais”。
所以,你有两种解决方案:
- 写下一个规格为你的应用程序只使用相同的字符编码
- 将元数据上的头某处指定为未来的字符串编码(如HTTP) 。
+0
是的,更一般地说任何*数据*不是附上它的编码是不可读的。这是超越网络乃至计算机科学的基本规则。两端需要共享相同的编码/解码规则或不能进行通信。 –
相关问题
- 1. 通过TCP套接字的Android发送/接收字节[]通过TCP套接字
- 2. 分别通过TCP套接字发送和接收字符串
- 3. 通过套接字发送字符和字节(TCP)
- 4. 在java中通过套接字发送字符串的问题
- 5. Ç - 发送修改后的字符串通过套接字
- 6. 通过套接字发送字符串时的延迟
- 7. 通过套接字发送wav文件
- 8. 通过套接字发送NULL数据
- 9. 通过UDP套接字发送数据
- 10. Android通过套接字发送数据
- 11. 通过套接字发送文件
- 12. 通过套接字发送inkcanvas笔画
- 13. Java通过套接字发送文件
- 14. 通过套接字发送HBITMAP
- 15. 通过套接字发送文件
- 16. 通过TCP套接字发送文件
- 17. indexoutofboundsexception通过套接字发送图片
- 18. 未通过套接字发送XStream
- 19. 通过UDP发送HEX值套接字
- 20. 通过套接字发送图像
- 21. 通过套接字发送int,c,C++
- 22. 通过套接字发送文件
- 23. 通过套接字发送视频帧
- 24. 通过套接字发送zip文件
- 25. 通过套接字发送RSA公钥
- 26. 通过套接字发送整数python
- 27. Java - 通过套接字发送证书
- 28. 通过Java套接字发送文件
- 29. c通过套接字发送图像
- 30. 通过套接字发送对象
*哪个*“网络格式”?如果它是*网络字节顺序*,则比通过@G_G查看答案。 –
我们在这里谈论两件不同的事情。我认为*网络字节顺序*是指八位字节顺序(特别是8位字节)的一种形式,而C中的一个字节的CHAR_BIT位可能大于或等于8. – Sebivor