其他分享
首页 > 其他分享> > Delphi 生成随机汉字函数GenerateChineseWords

Delphi 生成随机汉字函数GenerateChineseWords

作者:互联网

根据c#改编而来,很多年了。

function GenerateChineseWords(count: integer): string;
var
  i: integer;
  regionCode, positionCode: integer;
  regionCode_Machine, positionCode_Machine: integer;
  chineseWords: string;
begin
  Randomize;
  for i := 0 to count - 1 do
  begin
    // 获取区码(常用汉字的区码范围为16-55)
    regionCode := 16 + Random(40);
    // 获取位码(位码范围为1-94 由于55区的90,91,92,93,94为空,故将其排除)
    if (regionCode = 55) then
    begin
      // 55区排除90,91,92,93,94
      positionCode := Random(89) + 1;
    end
    else
    begin
      positionCode := Random(94) + 1;
    end;
    // 转换区位码为机内码
    regionCode_Machine := regionCode + 160; // 160即为十六进制的20H+80H=A0H
    positionCode_Machine := positionCode + 160; // 160即为十六进制的20H+80H=A0H
    // 转换为汉字
    chineseWords := chineseWords + char(regionCode_Machine) + char(positionCode_Machine);
  end;
  Result := chineseWords;
end;

标签:positionCode,end,Delphi,begin,Machine,regionCode,随机,integer,GenerateChineseWords
来源: https://www.cnblogs.com/YXGust/p/16576843.html