请问专家们一个问题:有这样一段16进制数据:e2ce 0000 e2ce 0000 e2ce 0000,需要将字符串中“e2ce”提取出来并高低位换位为“cee2”并将其转化为十进制这个代码怎么用delphi实现呢?
解决方案 »
- 搞了4 5年,还是皮毛,造孽,继续问点肤浅问题
- 如何写动态数组宣告方式及使用方式?
- 升级到D2007后出现Operation not allowed on a unidirectional DataSet,怎么解决呀?
- 关于MDI窗体的问题!(请问有没有人碰到过类似的问题?)
- 一段统计两个日期之间的记录数的代码有问题
- 可以免费向我索取Object Pascal Reference精简英文全文
- 我用ADOtable 如何实现对时间的排序,最近的在最上面?30分够不?? 快快快
- =====请教一个关于文件操作的问题=====
- 在线急等:access数据库,delphi下如何导出到.txt文件
- 愚蠢问题在于,98与Win2000怎么联不上?
- 能帮我解释一下这个存储过程
- 错误,郁闷错误,郁闷错误,郁闷错误,郁闷
var
s:string;
t:widechar;
begin
s:='e2ce';
t:=widechar(strtoint('$'+s)) ;
ShowMessage(t);
end;
procedure TForm1.Button1Click(Sender: TObject);
VAR
s,sr: string;
sa:array[0..5] of string;
slist:Tstringlist;
i: integer;
tmp,res: word;
begin
slist:=Tstringlist.Create;
slist.Delimiter:=' ';
slist.DelimitedText:='e2ce 0000 e2ce 0000 e2ce 0000';
sr:='';
for i:=0 to 5 do
begin
if slist.Strings[i]='e2ce' then
begin
sa[i]:=slist.Strings[i];
s:='$'+slist.Strings[i];
tmp:=strtoint(s);
res:=(tmp div 256)+(tmp mod 256)*256;
sa[i]:=inttostr(res);
end
else
sa[i]:='0000';
sr:=sr+' '+sa[i];
end;
showmessage(sr);
slist.Free;
end;
var
s:string;
iTemp, iRes:integer;
begin
s:= 'e2ce';
iTemp := StrToint('$'+s);
iRes := lo(iTemp) shl 8 + hi(iTemp) ;
ShowMessage(intToStr(iRes));
end;