|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 VB6论坛 』
→ get 函数读取二进制文件,地址超出长整形范围怎么办?
我的收件箱(0)
共有
1668
人关注过本帖
标题:
get 函数读取二进制文件,地址超出长整形范围怎么办?
只看楼主
加入收藏
czm645
等 级:
新手上路
帖 子:3
专家分:0
注 册:2014-7-9
结帖率:
0
楼主
收藏
已结贴
√
问题点数:20 回复次数:9
get 函数读取二进制文件,地址超出长整形范围怎么办?
我想根据地址获取文件中的数据,但地址超过长整形变量的范围,请问我怎么办?
2014-07-09 14:46
举报帖子
使用道具
赠送鲜花
风吹过b
等 级:
贵宾
威 望:
364
帖 子:4952
专家分:30104
注 册:2008-10-15
第
2
楼
收藏
得分:5
文件的地址超过了 长整形??
你的文件有多大?????超过了 2GB 一个的文件?
如果超过了2GB ,那你使用 API 进行文件读写吧。。。。。
或者使用 更新的语言进行 编程。
[
本帖最后由 风吹过b 于 2014-7-9 15:01 编辑
]
授人于鱼,不如授人于渔
早已停用QQ了
2014-07-09 14:59
举报帖子
使用道具
赠送鲜花
czm645
等 级:
新手上路
帖 子:3
专家分:0
注 册:2014-7-9
第
3
楼
收藏
得分:0
文件有11.9G大,是一种由单精度数据组成的大规模网格文件,由每个数据的地址可以对应计算出这个数据的坐标(如经纬度等),谁能把API读写文件说得更明了些,拜托
2014-07-10 08:36
举报帖子
使用道具
赠送鲜花
风吹过b
等 级:
贵宾
威 望:
364
帖 子:4952
专家分:30104
注 册:2008-10-15
第
4
楼
收藏
得分:0
好吧,再次承认我对 API 不熟。试了一下,我第一步就失败。打开文件失败,网上可供参考例子的基本上都是 C/C++ 的。
基本都看不懂。
授人于鱼,不如授人于渔
早已停用QQ了
2014-07-10 15:52
举报帖子
使用道具
赠送鲜花
bczgvip
等 级:
贵宾
威 望:
66
帖 子:1310
专家分:5312
注 册:2009-2-26
第
5
楼
收藏
得分:5
咱不推荐vb6读写文件大于2GB,就算熟悉位操作也挺麻烦的。
文件大小以及超4字节到8字节整数,还是可以操作,但更麻烦了。(都是非OPEN语句。)
真想用vb6解决问题,试试下面方法吧。
1.使用CreateFileMapping。
2.自己用C/C++做个DLL。
2014-07-10 16:59
举报帖子
使用道具
赠送鲜花
alike123
等 级:
侠之大者
威 望:
8
帖 子:107
专家分:428
注 册:2014-2-10
第
6
楼
收藏
得分:5
问楼上,c/c++做的dll
vb6.0可以用吗?这不是两个语言吗
2014-07-11 09:18
举报帖子
使用道具
赠送鲜花
风吹过b
等 级:
贵宾
威 望:
364
帖 子:4952
专家分:30104
注 册:2008-10-15
第
7
楼
收藏
得分:0
可以用的。
WINDOWS 中的 DLL ,大部分都是用 C/C++ 写。编译后都是二进制的机器代码,VB6 的真编译也是如此。
授人于鱼,不如授人于渔
早已停用QQ了
2014-07-11 13:41
举报帖子
使用道具
赠送鲜花
茅十八
等 级:
论坛游侠
帖 子:35
专家分:123
注 册:2014-3-11
第
8
楼
收藏
得分:5
以下是引用
czm645
在2014-7-9 14:46:46的发言:
我想根据地址获取文件中的数据,但地址超过长整形变量的范围,请问我怎么办?
你就使用VB的货币变量保存地址,长整型肯定装不下12G,货币变量占8字节,肯定装装下12G
Private Sub Command1_Click()
Dim k As Currency
k = (2 ^ 30) * 12
'能装下大于12G的地址
Print k
End Sub
另外,注意一点, 当数据较大时,应自己用计算器先算出结果,再把结果直接赋给变量,别像我上面那样k = (2 ^ 30) * 12
直接把结果赋给k ,即k=12884901888。
[
本帖最后由 茅十八 于 2014-7-15 14:05 编辑
]
个人QQ:1789851851,有学习问题,欢迎找我讨论,另外Win32 SDK开发群:179492890
2014-07-15 13:54
举报帖子
使用道具
赠送鲜花
风吹过b
等 级:
贵宾
威 望:
364
帖 子:4952
专家分:30104
注 册:2008-10-15
第
9
楼
收藏
得分:0
回复 8 楼 茅十八
Seek 函数
返回一个 Long,在 Open 语句打开的文件中指定当前的读/写位置。
-------------------------
Seek 语句
在 Open 语句打开的文件中,设置下一个读/写操作的位置。
position 必要。介于 1 – 2,147,483,647 之间的数字,指出下一个读写操作将要发生的位置。
-------------------------
2,147,483,647=2G-1
====================================
VB中规定读写位置不超过 LONG 。所以你打算用 货币型变量 来 指示 读写 位置,是无效的。
授人于鱼,不如授人于渔
早已停用QQ了
2014-07-15 14:49
举报帖子
使用道具
赠送鲜花
czm645
等 级:
新手上路
帖 子:3
专家分:0
注 册:2014-7-9
第
10
楼
收藏
得分:0
渴望有大侠指点在VB中怎么用Openfile,Readfile,Creatfile等,给个实例学习学习
2014-08-04 15:20
举报帖子
使用道具
赠送鲜花
10
1/1页
1
快速回复:
get 函数读取二进制文件,地址超出长整形范围怎么办?
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023631 second(s), 7 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved