delphi 随机函数单元uRandomUtils


本文整理自网络,侵删。

 
unit uRandomUtils; //晓不得2013 QQ:26562729

interface

uses system.math, system.SysUtils;

function GetRandomCharStr(ADig: integer): string;
function GetRandomNumStr(ADig: integer): string; overload;
function GetRandomNumStr(AStart, AEnd: integer): string; overload;
function GetRandomHanziStr(ADig: integer): string;

implementation

type
  TGetRandomChar = reference to function: Char;

const
  HanZi = '平丽强勇军梅建化国中天莉尚丰田开杰锦思小晓伦春满淋叶风亚唯赵';

function GetRandomString(ADig: integer; AGetRadomChar: TGetRandomChar): string; overload;
var
  i: integer;
begin
  Result := '';
  if ADig < 1 then exit;
  for i := 1 to ADig do
  begin
    Randomize;
    Result := Result + AGetRadomChar;
  end;
end;

function GetRandomCharStr(ADig: integer): string;
var
  AChar: TGetRandomChar;
begin
  AChar := function: Char
    begin
      Result := Char(RandomRange(65 + 32, 91 + 32));
    end;
  Result := GetRandomString(ADig, AChar);
end;

function GetRandomNumStr(ADig: integer): string;
var
  AChar: TGetRandomChar;
begin
  AChar := function: Char
    begin
      Result := inttostr(RandomRange(0, 10))[1];
    end;
  Result := GetRandomString(ADig, AChar);
end;

function GetRandomNumStr(AStart, AEnd: integer): string; overload;
begin
  Result := IntToStr(RandomRange(AStart, AEnd + 1));
end;

function GetRandomHanziStr(ADig: integer): string;
var
  AChar: TGetRandomChar;
  nHanzi: integer;
begin
  nHanzi := length(HanZi) + 1;
  if nHanzi <= 1 then exit('');
  AChar := function: Char
    begin
      Result := HanZi[RandomRange(1, nHanzi)];
    end;
  Result := GetRandomString(ADig, AChar);
end;

end.

相关阅读 >>

Delphi使用project manager添加一个java库到你的应用程序

Delphi 取字符串中间

Delphi idhttp批量上传图片

Delphi 程序如何禁止切换输入法?

Delphi 多线程 开始、暂停、继续、停止

Delphi tedit 编辑框 中文使用说明

windows api 的数据类型与 Delphi 数据类型对照表

Delphi用ado操作数据库完整示例

Delphi tdragimage v0.1 Delphi 图片拖拽组件 带有加速度 碰撞效果

Delphi 利用阿里大于接口发短信(Delphi版)

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...