现在有一个字符串 str:= 0186A0;
我现在用 str[i] 去 取出的是0\1\8\6\A\0
我想用str[i] 去 取 01 86 A0
我是msg[i]:= ord(str[i]); 的实现
我现在用 str[i] 去 取出的是0\1\8\6\A\0
我想用str[i] 去 取 01 86 A0
我是msg[i]:= ord(str[i]); 的实现
解决方案 »
- 获取目的窗口、屏幕指定区域图像
- 救命 啊 大虾 进来 瞧瞧???
- 我要用通过OLE调用CAD来删除相交于两条线中间的线段,请问如何处理???请大家帮帮忙
- 扩展DBGrid的问题
- 第一次运行可以,第二次出错!‘Access violation at address 004B09BD in module’ Read of address,
- dbgrid里修改cell的值或者删除记录后,有时候会出现记录的重复行的问题!为什么?救急!
- 急!急!三层结构,Client端调用App Server端的过程时报错"接线者无效",详细见里面
- 一个关于硬盘序列号的问题
- 如何在菜单项中加入32*32的大图标?
- 如何通过按钮(button)来关闭fsMDIChild类型的窗体
- delphi 中有 c++ 中 typedef 的东西吗??哪位把这个代码翻译成 delphi代码啊?
- delphi 达人~~ 请问 delphi 能用 c++的 lib 库不???????
msg[i]:= Copy(str, 1+i*2, 2);
如果01表示一个字节的一个整数,是可以做到的,但取出的时候还是一个字节的整数var
str, Str2: string;
I: Integer;
begin
str:= '0186A0';
SetLength(Str2, Length(Str) div 2);
for I := 1 to Length(str) div 2 do
begin
Str2[I] := Chr(StrToInt('$' + Copy(str, 2 * I -1, 2)));
end;
//此时str2已经满足你的要求
end;
str:string;
tempstr:string;
tempint:integer;str:='12345';
while str<>'' do
begin
tempstr:='$'+copy(str,1,2);
tempint:=strtoint(tempstr);
str:=copy(str,3,length(str)-2);
end;//--每两个字符取一次后转换成BYTE类型的数据。这个算法我得用很多了。。