X
xuegaoyili
Unregistered / Unconfirmed
GUEST, unregistred user!
function BigToSmall(Value: string): string;
const
BigNum='零壹贰叁肆伍陆柒捌玖';
var
i: integer;
j: integer;
begin
result := '';
for i := 1 to length(Value) do //错误在这里,这个length()会把汉字分开,一个汉字是两个长度,也就是说它是按字节给返回的长度
begin
if pos(Value,BigNum)<>0 then
begin
result:=result+IntToStr(Pos(Value,BigNum)-1);
end;
end;
end;
-------------------------------------------------------------------------
另一种想法
function BigToSmall(Value: string): string;
var
i: integer;
j: integer;
begin
result := '';
for i := 1 to length(Value) do //同样不能得到一个汉字,汉字按2个字节分开处理了
begin
case Value of
'零':Result:=Result+'0';
'壹':Result:=Result+'1';
'贰':Result:=Result+'2';
'叁':Result:=Result+'3';
'肆':Result:=Result+'4';
'伍':Result:=Result+'5';
'陆':Result:=Result+'6';
'柒':Result:=Result+'7';
'捌':Result:=Result+'8';
'玖':Result:=Result+'9';
end;
end;
end;
const
BigNum='零壹贰叁肆伍陆柒捌玖';
var
i: integer;
j: integer;
begin
result := '';
for i := 1 to length(Value) do //错误在这里,这个length()会把汉字分开,一个汉字是两个长度,也就是说它是按字节给返回的长度
begin
if pos(Value,BigNum)<>0 then
begin
result:=result+IntToStr(Pos(Value,BigNum)-1);
end;
end;
end;
-------------------------------------------------------------------------
另一种想法
function BigToSmall(Value: string): string;
var
i: integer;
j: integer;
begin
result := '';
for i := 1 to length(Value) do //同样不能得到一个汉字,汉字按2个字节分开处理了
begin
case Value of
'零':Result:=Result+'0';
'壹':Result:=Result+'1';
'贰':Result:=Result+'2';
'叁':Result:=Result+'3';
'肆':Result:=Result+'4';
'伍':Result:=Result+'5';
'陆':Result:=Result+'6';
'柒':Result:=Result+'7';
'捌':Result:=Result+'8';
'玖':Result:=Result+'9';
end;
end;
end;