delphi中如何傳送字節﹐文本文件如何轉換成hex傳送﹖(100分)

  • 主题发起人 主题发起人 haozhip
  • 开始时间 开始时间
H

haozhip

Unregistered / Unconfirmed
GUEST, unregistred user!
delphi中如何傳送字節﹐文本文件如何轉換成hex傳送﹖
例如﹕
如何傳送HEX文件給下位机和接受下位机傳來的信號﹒
 
你可以不管他的,文本字符串不也是字节流吗?
例如:
type
TByteAry = array [0..1] of Byte;
PByteAry = ^TByteAry;
var
FS: TFileStream;
S: String;
Len: Integer;
P: PByteAry;
begin
var
FS: TFileStream;
I, Len, X: Integer;
S: String;
P: PByteAry;
begin
FS:= TFileStream.Create('MyFile.txt', fmOpenRead);
Len:= FS.Size;
SetLength(S, Len);
FS.Read(S[1], Len);
FS.Free;
P:= @S[1];
for I:= 1 to len do begin
X:= P^;
//...
end;
end;
 
>>delphi中如何傳送字節﹐文本文件如何轉換成hex傳送﹖
tcp/ip协议中都是一包的形式来操作的,你完全没必要一个一个字节来传送。
文本文件也不用转换成hex来发送,一文件流的方式传送就可以了。如果你确实要发送hex流,
那就从文件中读取出文件内容,在转换为hex就可以了,这样效率肯定不行。
 
if thr=-1 then showmessage('生成');
tmp:=byte($55);
fileseek(thr,0,0);
filewrite(thr,tmp,1);
tmp:=byte($AA);
filewrite(thr,tmp,1);
tmp:=byte($ff);
filewrite(thr,tmp,1);
tmp:=byte($ff);
filewrite(thr,tmp,1);
tmp:=(sendform.ppage);
filewrite(thr,tmp,1);
 
多人接受答案了。
 
后退
顶部