送分来了,呵呵

junsanrao 2008-09-24 10:43:57
Byte[] sendByte = new Byte[64]
中的64是不是字节,如果是的话,那是不是只能发送32个汉字或64个字母这样的意思
...全文
51 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
277894613 2008-09-24
  • 打赏
  • 举报
回复
[Quote=引用楼主 junsanrao 的帖子:]
Byte[] sendByte = new Byte[64]
中的64是不是字节,如果是的话,那是不是只能发送32个汉字或64个字母这样的意思
[/Quote]
关键看你的编码格式了,如果在Unicode2的话所有字都是2字节,如果是UTF8的话一般汉字都是3字节,如果是ANSI的话汉字2字节,
建议是发送前先按照既定的编码方式Encoding.ToBytes()一下,这样直接就得到字节数组了,然后你是截断还是追加就随缘了
junsanrao 2008-09-24
  • 打赏
  • 举报
回复
是不是说,这个数字对我发送的信息有很大的约束,我取128就更大,那要取多少才能适合呢,像QQ里面有时发好长的东西,那不是要取1280000甚至更大?能有其它的办法吗
junsanrao 2008-09-24
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 keith0220 的回复:]
不是汉字或者字母,是汉字或字母在内存中的长度

比如:一个文本"CSDN社区"

这几个字长度是:100

"CSDN"这字长度是:50

那我们利用stream读取其中的50个字节的话就只取得"CSDN"这几个字而不是50个字
[/Quote]

你说的很有道理,还是不太明白,也就是64没多大关系喽
keith0220 2008-09-24
  • 打赏
  • 举报
回复
看错了,她是定义一个byte数组,那是代表汉字或者字母
wdgphc 2008-09-24
  • 打赏
  • 举报
回复
[Quote=引用楼主 junsanrao 的帖子:]
Byte[] sendByte = new Byte[64]
中的64是不是字节,如果是的话,那是不是只能发送32个汉字或64个字母这样的意思
[/Quote]

不一定,看你汉字的编码格式,不一定所有的汉字都是2个字节.
keith0220 2008-09-24
  • 打赏
  • 举报
回复
不是汉字或者字母,是汉字或字母在内存中的长度

比如:一个文本"CSDN社区"

这几个字长度是:100

"CSDN"这字长度是:50

那我们利用stream读取其中的50个字节的话就只取得"CSDN"这几个字而不是50个字
mykelly6 2008-09-24
  • 打赏
  • 举报
回复
应该是D,可以运行了测试下~
Red_angelX 2008-09-24
  • 打赏
  • 举报
回复
是的
lude8880 2008-09-24
  • 打赏
  • 举报
回复
正确

110,566

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧