S,FD1,FD2是String类型的。这个例程说明如何将小于40个字节的String转换
成中文兼容的。当然可以是任意长度。
S:=Copy(Query.Fields[1].AsString,1,40);
L:=Length(S);
if L>FD1
then
if (ByteType(S, FD1) = mbLeadByte)
then
begin
S:=Copy(S, 1, Pred(FD1))+#13+Copy(S,FD1,L-Pred(FD1));
Inc(L);
end
else
begin
S:=Copy(S, 1, FD1)+#13+Copy(S,Succ(FD1),L-FD1);
Inc(L);
end;
if L>FD2
then
if (ByteType(S, FD2) = mbLeadByte)
then
begin
S:=Copy(S, 1, Pred(FD2))+#13+Copy(S,FD2,L-FD2);
end
else
S:=Copy(S, 1, FD2)+#13+Copy(S,Succ(FD2),L-FD2);