做测试时经常需要生成一些随机数据,最常见的就是生成随机字符串。而且往往要生成Unicode字符串,有时还要特别指定生成的字符的语言范围。下面是我觉得比较灵活的方法:
public
string
NextString(
int
charLowerBound,
int
charUpperBound,
int
length) {
return
new
String( Enumerable.Repeat(
0
, length) .Select(p
=>
(
char
)Next(charLowerBound, charUpperBound)) .ToArray()); }
其中,charLowerBound和charUpperBound指定了字符的范围,这个可以在维基百科查到,一般全范围的Unicode就用0x20到0xD7FF即可。
Next方法可以用任何随机生成int值的方法代替。
参考:http://www.bonf.net/2009/01/14/generating-random-unicode-strings-in-c/