在vb中byte数据类型到底是怎么回事?一般来说可以怎么用?

xabbs 2003-03-05 09:09:25
我好像从来没有用过byte类型。
因为不知道一般什么情况下会用到byte类型。
说能讲解一下?
...全文
3705 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
sumtec 2003-03-08
  • 打赏
  • 举报
回复
正确!实际上无需转换,存在内存中的字符串也是按照一定的编码方式编码的二进制值。
xabbs 2003-03-06
  • 打赏
  • 举报
回复
Dim d As Byte() = System.Text.Encoding.ASCII.GetBytes("abcdajsfjklasdfkl")

这句话是不是这个意思:
按照你上文所说,“比如说字符'A',如果我们用AscII方式去理解,或者说转换成用AscII编码储存的二进制数据,那就是一个字节;”,所以就把那个字符串按照AscII方式编码,那么就是一个字符编成一个字节的AscII码,所以GetBytes()就一次取出了一个字符,存到
Byte数组中做为数组的一个元素?
这么说,最后得到的Byte型数组d()中存的是字符串("abcdajsfjklasdfkl")的每个字母的
AscII码?
xabbs 2003-03-06
  • 打赏
  • 举报
回复
sumtec(Psydian),麻烦你看一下我的另一篇问题:
http://expert.csdn.net/Expert/topic/1494/1494906.xml?temp=.4397699

其中Montaque(Rainman) 回复的那一篇,
Dim d As Byte() = System.Text.Encoding.ASCII.GetBytes("abcdajsfjklasdfkl")
我就是不明白把一个字符串为什么要转成Byte() 型。
e8007 2003-03-06
  • 打赏
  • 举报
回复
这个我收藏啦,呵呵~~
sumtec 2003-03-05
  • 打赏
  • 举报
回复
byte 类型是一个字节的数据,这个类型有以下几个应用场合:
1、最常用的一个场景,就是处理二进制数据流,比如说从某个文件读取一段,我们在读取的时候并不关心这个文件到底是什么格式,只需要关心我需要从哪里开始的多长的一段。然后我们可以一个字节一个字节去分析这个文件的某部分。或者我们用来获取网络上传递的信息,或者用来承载串行口传过来的数据等等。

2、最简单的一个场景,就是处理一个字节的数据。对于VB.NET来说,一个Char的长度不是一个字节,也不是两个字节,而仅仅是用来表示一个字符得很抽象的类——其实是两个字节,我这么说有我的理由的:比如说字符'A',如果我们用AscII方式去理解,或者说转换成用AscII编码储存的二进制数据,那就是一个字节;如果用Unicode方式,那么就是两个字节。也就是说现在不能像VB6那样,用Char来存储一个字节的数据(首先某些二进制值是非法字符,存不进去,其次就算存进去了,也很可能会浪费50%的空间,就算做得很好也不太可能有100%的利用率),你也不要企望一个Char他就一定是代表一个字节的内容。所以现在我们用Byte来处理一个字节大小的数据。

3、如果你有很多很多的标志位,就是那种只要表示“是或否”的数据,如果你用Boolean就非常不合算,因为Boolean占用4个字节,而Byte只占用一个。比如你有1百万个这样的标志,那么用Boolean要花费4MB,而用Byte只要1MB。当然,为建议你最好不要用Byte来作为标志使用,原因你自己慢慢体会。现在的内存够大,没必要为了省这么3MB的空间而作出另外一些牺牲。
TheAres 2003-03-05
  • 打赏
  • 举报
回复
byte是0~255直接的一个数字。

一般都是用byte数组。

16,557

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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