求助!!在线等待。关于处理字节!!!(急)

cxzh9888 2004-04-29 05:45:04
1、如何读取一个文件的第n个字节的数据?n=0x000f,这是什么意思,是指这是16进制的吗??

2、假设1问题已经解决,现在已经得到一个字节的数据bData。如何获得它的每一位的值呢?

3、如何去掉某文件前n个字节呢?
我想这么做,可是如何获得所有文件的字节总数呢??
dim bt() as byte
redim bt(n-1)
open filename1 for binary as #1
m=文件的字节总数
get 1,,bt
redim bt(m-n-1)
get 1,,bt
open filename2 for binary as #2
put 2,,bt
close
...全文
69 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
northwolves 2004-04-29
  • 打赏
  • 举报
回复
Private Sub Command2_Click() 'remove first n bytes from filename1
Dim bt() As Byte
Open filename1 For Binary As #1
ReDim bt(LOF(1) - n - 1)
Get 1, , bt
Close #1
Open filename2 For Binary As #2
Put 2, , bt
Close #2
End Sub

Private Sub Command3_Click() ' get the nth byte
Dim bt As Byte
Open filename1 For Binary As #1
Get 1, n, bt
Close #1
End Sub
cxzh9888 2004-04-29
  • 打赏
  • 举报
回复
如何读取一个文件的第n个字节的数据?
BitBlt 2004-04-29
  • 打赏
  • 举报
回复
TO: viena(晓琴)
是我。
bitblt,我喜欢用这个函数。
pigpag 2004-04-29
  • 打赏
  • 举报
回复
注意,N = &H000F&,最好指定最后的&,否则会成为Integer类型的。


&HF = 15还没什么问题,大家可以看一下&HFFFF和&HFFFF&的值有什么区别(顺便可以想一下为什么:))。
pigpag 2004-04-29
  • 打赏
  • 举报
回复
1. n = 0x000f; /*这是C/C++的十六进制表示法*/

N = &H000F& '这是VB的表示方法


2. 取模,因为VB没有移位算符,所以用整除号:
bPos = (bData \ (2 ^ (8 - N))) Mod 2 '右边第N位的

3. Lof函数。Lof(文件号)返回指定文件号打开文件的总长度(字节)。
viena 2004-04-29
  • 打赏
  • 举报
回复
是月光寒吗?干吗叫BitBlt?object.PaintPicture
taosihai1only 2004-04-29
  • 打赏
  • 举报
回复
up
hhyttppd 2004-04-29
  • 打赏
  • 举报
回复
3 .bytes=filelen(path)
Rex_love_Burger 2004-04-29
  • 打赏
  • 举报
回复
up
BitBlt 2004-04-29
  • 打赏
  • 举报
回复
1. n=0x000f,这是C的语法。用VB写就是n=&H000F

2. bdata and 2^(n-1) ,获得第N位的值。

3。lof(1)
nik_Amis 2004-04-29
  • 打赏
  • 举报
回复
up

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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