获取随机字符串的方法 GetRandomString
方法1:推荐方便。
System.Hash 单元
Memo1.Lines.Add(THash.GetRandomString(50));

方法二(自己写的):
function TStrApi.SuiJiString(const AWeiShu: Integer): string;
const
SourceStr: string = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
var
MyRep: string;
I: Integer;
begin
Randomize;
for I := to AWeiShu do
begin
//这里只所以必须加1,是因为SourceStr是从1开始的,而Random是从0开始的,SourceStr[0]就会报错,SourceStr[63]也会报错
MyRep := MyRep + SourceStr[Random()+];
end;
Exit(MyRep);
end;
PK结果,效率差不多。:
procedure TForm6.Button1Click(Sender: TObject);
var
I: Integer;
startTime: Cardinal;
strResult: string;
begin
startTime := GetTickCount;
for I := to do
begin
strResult := THash.GetRandomString();
end;
Label1.Caption := '耗时: ' + (GetTickCount - startTime).ToString;
end; procedure TForm6.Button2Click(Sender: TObject);
const
SourceStr: string = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
var
strResult: string;
I,K: Integer;
startTime: Cardinal;
begin
startTime := GetTickCount;
for I := to do
begin
Randomize;
strResult := '';
for K := to do
begin
//这里只所以必须加1,是因为SourceStr是从1开始的,而Random是从0开始的,SourceStr[0]就会报错,SourceStr[63]也会报错
strResult := strResult + SourceStr[Random()+];
end;
end;
Label1.Caption := '耗时: ' + (GetTickCount - startTime).ToString;
end;


获取随机字符串的方法 GetRandomString的更多相关文章
- php获取随机字符串的几种方法
方法一:shuffle函数(打乱数组)和mt_rand函数(生成随机数,比rand速度快四倍) /** * 获得随机字符串 * @param $len 需要的长度 * @param $special ...
- go golang 判断base64数据 获取随机字符串 截取字符串
go golang 判断base64数据 获取随机字符串 截取字符串 先少写点,占个坑,以后接着加. 1,获取指定长度随机字符串 func RandomDigits(length int) strin ...
- php获取随机字符串
获取随机字符串 /** * 获取随机字符串 * @param int $randLength 长度 * @param int $addtime 是否加入当前时间戳 * @param int $incl ...
- mysql获取随机字符串和随机数的方法
在我们开发的过程中,我们可能会需要在表中随机生成一些数据以供我们进行相应的测试. 就像我之前发的“mysql创建存储过程向数据表中加入规定条数的数据” 那么我们应该怎样生成随机的字符串和随机数字呢? ...
- PHP获取随机字符串的两种方法
<?php /** * 随机返回字符串 * @param number 返回字符串长度 * @param string 从哪些字符串中随机返回,已设置默认字符串,可空 * @return str ...
- php 获取随机字符串(原创)
//获取随机数字字母字符串 function get_rand_str($len=8){ $randArr=array_merge(range(0,9),range('a','z'),range('A ...
- java 与日期转换相关的方法(java.util.date类型和java.sql.date类型互相转换)、随机字符串生成方法、UUID生产随机字符串
package com.oop.util; import java.text.*; import java.util.UUID; import org.junit.Test; /* * 与日期相关的工 ...
- shell 获取随机字符串
一直使用 /dev/urandom 和md5sum的方式去随机字符串,感觉还是不够随机,毕竟只有小写字母和数字嘛. 换换口味: [root@localhost ~]# arr=(`echo {a..z ...
- 获取随机字符串(0~9,A~Z)
/// <summary> /// 生成随机数 /// </summary> /// <param name="cod ...
随机推荐
- ---web模型 --mvc和模型--struts2 入门
关于web模型: 早期的web 应用主要是静态页丽的浏览〈如新闻的制监),随着Internet的发展,web应用也变得越来越复杂,不仅要 和数据库进行交互 ,还要和用户进行交互,由此衍生了各种服务器端 ...
- [poj 1533]最长上升子序列nlogn树状数组
题目链接:http://poj.org/problem?id=2533 其实这个题的数据范围n^2都可以过,只是为了练习一下nlogn的写法. 最长上升子序列的nlogn写法有两种,一种是变形的dp, ...
- vim文件头部注释配置
http://note.youdao.com/noteshare?id=26dff538fabf3e8a0c4e85815256d5bb
- Kubernetes Downward API
目录 说明 环境变量方式 将pod信息注入为环境变量 将容器资源信息注入为环境变量 volume挂载方式 作用 说明 我们知道,每个Pod在成功创建出来之后,都会被系统分配唯一的名字.IP地址,并且处 ...
- RAC的坑
http://www.cocoachina.com/industry/20140609/8737.html 1.对数组的观察 有了这些Category,大部分的Delegate都可以使用RAC来做.或 ...
- Autolayout下使用代码改变frame无效
在使用自动布局的情况下,子视图的边框无法改变.就算调用setFrame方法也不会有效果.自动布局引擎对于子视图的大小和位置有最终的决定权.如果你需要在运行时改变边框,那就得用NSLayoutConst ...
- 安装并使用 Wowza 发布你的 RTMP 直播流
转载自:http://blog.csdn.net/defonds/article/details/11979095 I. 下载 Wowza 官方下载地址 http://www.wowz ...
- 一、Kafka初认识
一.kafka使用背景 1.Kafka使用背景 在我们大量使用分布式数据库.分布式计算集群的时候,是否会遇到这样的一些问题: 我们想分析下用户行为(pageviews),以便我们设计出更好的广告位 我 ...
- .Net多线程之线程安全
ConcurrentDictionary是.net4.0推出的一套线程安全集合里的其中一个,和它一起被发行的还有ConcurrentStack,ConcurrentQueue等类型,它们的单线程版本( ...
- 网页制作中最有用的免费Ajax和JavaScript代码库
网上看到的一篇小文,挺有用的,收藏在这. 本文中,我整理了12个免费的Ajax和JavaScript代码库,可以帮助Web开发人员将应用程序提升到一个新水平. Ajax Instant Messeng ...