• 全部
  • 语言基础/算法/系统设计
  • 数据库相关
  • 图形处理/多媒体
  • 网络通信/分布式开发
  • VCL组件开发及应用
  • Windows SDK/API
  • 问答

请教 各位大哥一个问题,怎么把 byte 类型的数组 转换成为 字符串,谢谢!

jinlong2008 2005-04-01 02:43:22
procedure TForm1.Button1Click(Sender: TObject);

var
i:integer;
a:array [0..3] of byte;
s:string;

begin

a[0]:=48;
a[1]:=49;
a[2]:=73;
a[3]:=67;

setlength(s,4);
for i:=0 to 3 do
s[i+1]:=inttostr(com.ReData[i])[1];
showmessage(s);
end;


show 出的结果是:4476
的到是48,49,73,67 的第一个字母

我要怎么做才能得到正确的结果呢?

问题2:

a[0]:=48;
a[1]:=49;
a[2]:=73;
a[3]:=67;

现在我需要得到
showmessage(a[0])得到的是: 0;
showmessage(a[1])得到的是: 1;
showmessage(a[2])得到的是: I;
showmessage(a[3])得到的是: C;

也就是说把 ASC 码值 转变 一般字符

这样的要怎么做呢?



谢谢各位大哥!
...全文
104 点赞 收藏 9
写回复
9 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
jinlong2008 2005-04-02
谢谢 各位大哥!
回复
Heyongfeng 2005-04-01
同意一楼的,用char转换就可以了。
回复
seekmydoom 2005-04-01
好久没有来学习了,学习学习
回复
何鲁青 2005-04-01
var
a:array [0..3] of byte;
s:string;
begin
a[0]:=48;
a[1]:=49;
a[2]:=73;
a[3]:=67;
setlength(s,4);
move(a[0],s[1],4);------->a[0]纠正a
showmessage(s);
回复
何鲁青 2005-04-01
var
a:array [0..3] of byte;
s:string;
begin
a[0]:=48;
a[1]:=49;
a[2]:=73;
a[3]:=67;
setlength(s,4);
move(a[0],s[1],4);
showmessage(s);
-------------------------
掺和掺和....
回复
jinjazz 2005-04-01
var
a:array [0..3] of byte;
s:string;
begin

a[0]:=48;
a[1]:=49;
a[2]:=73;
a[3]:=67;

s:=strpas(@a);
setlength(s,4);
//或者用strmove(pchar(s),@a[0],4) ;
showmessage(s);
回复
何鲁青 2005-04-01
严重支持楼上老大...^_^
回复
gzmhero 2005-04-01
刚刚的是转成字符。
这个是显示ASCII串的。
procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
a:array [0..3] of byte;
s:string;
begin

a[0]:=48;
a[1]:=49;
a[2]:=73;
a[3]:=67;
s:='';
for i:=0 to 3 do
s:=s+IntToStr(a[i])+' ';
showmessage(s);
end;
回复
gzmhero 2005-04-01
procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
a:array [0..3] of byte;
s:string;
begin
a[0]:=48;
a[1]:=49;
a[2]:=73;
a[3]:=67;
setlength(s,4);
for i:=0 to 3 do
s[i+1]:=char(a[i]);
showmessage(s);
end;
回复
相关推荐
发帖
Delphi
创建于2007-08-02

4892

社区成员

Delphi 开发及应用
申请成为版主
帖子事件
创建了帖子
2005-04-01 02:43
社区公告
暂无公告