DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: lixuan123
今日帖子: 0
在线用户: 4
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 12521052 (混世生) ★☆☆☆☆ -
盒子活跃会员
2003/10/29 22:24:10
标题:
我的問題,關於流…… 浏览:1410
加入我的收藏
楼主:  我正在寫一個小程序,快被逼瘋了。
 不費話了。問題:
  格式(Hex):06 00 65 66 67 68 69 70

  一、從流中讀取不定長度的字符用什麽?
  可以看的出來第1,2位是長度,後邊跟著字符,正確答案應該是'ABCDEF',用String顯然不能做爲Buffer,在很多地方我都用Pchar,但在這裏我用Pchar會出錯……就是那種沒有提示的給出一個內存地址的錯誤,FAINT……
  我只有用Help中讀取文件的那個array[1..x] of char了,但這又不能滿足不定長度的需要,總不能定義一個65535長度的數組吧。
  二、有沒有可能因爲delphi自己或是內存的原因出那種錯誤。因爲我覺得我的代碼沒有錯誤。呵呵,有時運行正常,但加了一點無關緊要的代碼就會出錯。

----------------------------------------------
——混世生
作者:
男 zizii (高高高级馒头) ★☆☆☆☆ -
神秘会员
2003/10/29 22:26:34
1楼: 用Pchar吧,一般都是这样,一般的流都提供readbuffer函数。
----------------------------------------------
维护世界和平,共创美好盒子。
作者:
男 rushfly (舟舶能) ★☆☆☆☆ -
盒子活跃会员
2003/10/30 0:27:14
2楼: 用pchar可以的。
----------------------------------------------
-
作者:
男 rushfly (舟舶能) ★☆☆☆☆ -
盒子活跃会员
2003/10/30 0:28:02
3楼: 我想可能你没有初始化pchar吧,先分配内存哦
----------------------------------------------
-
作者:
男 12521052 (混世生) ★☆☆☆☆ -
盒子活跃会员
2003/10/30 21:06:29
4楼: 分配内存是什么意思。
 请详细一点好吗。
 我的关键部分代码差不多是这样的。M是TMemoryStream,是一个全局变量。应该没有错误吧?
var
  p : pchar;
  i : word;
begin
  M.seek(0, soFromBeginning);
  M.readbuffer(i ,2);
  M.readbuffer(p, i);
end;
----------------------------------------------
——混世生
作者:
男 catanx (catanx) ★☆☆☆☆ -
盒子活跃会员
2003/10/31 10:02:27
5楼: 他的是16进制流
BlockRead(f,b,sizeof(b),NumRead);
----------------------------------------------
我常逛的一个电影站,写写程序看看电影,不要太累了,会死人的:)
www.ddvan.com
很有特色哦,自己发觉吧。
作者:
男 12521052 (混世生) ★☆☆☆☆ -
盒子活跃会员
2003/10/31 19:30:45
6楼: BlockRead很简单,以前我用这个,没有出过错。
----------------------------------------------
——混世生
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行60.54688毫秒 RSS