function LeftString(sData: String; iLen: Integer; iMode: Integer = 0): String;
//入口参数:
// sData - 字符串
// iLen - 取出的字节数
// iMode - 遇到取出的最后一个字节是半个汉字时的处理方式
// 0-取半个汉字(默认), 1-丢弃半个汉字, 2-取完整的汉字
var
bChinesePrev: Boolean;
iLoop : Integer;
begin
bChinesePrev := False;
If iLen < Length(sData) + 1 Then
for iLoop := 1 to iLen do
if ord(sData[iLoop]) >= 160 then bChinesePrev := not bChinesePrev;
If bChinesePrev Then
Case iMode of
0 : Result := Copy(sData, 1, iLen);
1 : Result := Copy(sData, 1, iLen - 1);
2 : Result := Copy(sData, 1, iLen + 1);
end
else
Result := Copy(sData, 1, iLen);
end;