为什么要自己写这个生成器呢?大家应该都有过为测试数据发愁的时候,我就是出于这样的原因。
尽管本次代码很少,但是还会有后续的生成器分享出来。
我代码底子还不是很好,希望各位同道能够发表意见,同是也欢迎大家提意见。
上码欣赏,走着!
1 public class GetChineseNames 2 { 3 string strLastName = "赵 钱 孙 李 周 吴 郑 王 冯 陈 褚 卫 蒋 沈 韩 杨 朱 秦 尤 许 " 4 + "何 吕 施 张 孔 曹 严 华 金 魏 陶 姜 戚 谢 邹 喻 柏 水 窦 章 " 5 + "云 苏 潘 葛 奚 范 彭 郎 鲁 韦 昌 马 苗 凤 花 方 俞 任 袁 柳 " 6 + "酆 鲍 史 唐 费 廉 岑 薛 雷 贺 倪 汤 滕 殷 罗 毕 郝 邬 安 常 " 7 + "乐 于 时 傅 皮 卞 齐 康 伍 余 元 卜 顾 孟 平 黄 和 穆 萧 尹 " 8 + "姚 邵 湛 汪 祁 毛 禹 狄 米 贝 明 臧 计 伏 成 戴 谈 宋 茅 庞 " 9 + "熊 纪 舒 屈 项 祝 董 粱 杜 阮 蓝 闵 席 季 麻 强 贾 路 娄 危 " 10 + "江 童 颜 郭 梅 盛 林 刁 钟 徐 邱 骆 高 夏 蔡 田 樊 胡 凌 霍 " 11 + "虞 万 支 柯 昝 管 卢 莫 经 房 裘 缪 干 解 应 宗 丁 宣 贲 邓 " 12 + "郁 单 杭 洪 包 诸 左 石 崔 吉 钮 龚 程 嵇 邢 滑 裴 陆 荣 翁 " 13 + "荀 羊 於 惠 甄 麴 家 封 芮 羿 储 靳 汲 邴 糜 松 井 段 富 巫 " 14 + "乌 焦 巴 弓 牧 隗 山 谷 车 侯 宓 蓬 全 郗 班 仰 秋 仲 伊 宫 " 15 + "宁 仇 栾 暴 甘 钭 厉 戎 祖 武 符 刘 景 詹 束 龙 叶 幸 司 韶 " 16 + "郜 黎 蓟 薄 印 宿 白 怀 蒲 邰 从 鄂 索 咸 籍 赖 卓 蔺 屠 蒙 " 17 + "池 乔 阴 欎 胥 能 苍 双 闻 莘 党 翟 谭 贡 劳 逄 姬 申 扶 堵 " 18 + "冉 宰 郦 雍 舄 璩 桑 桂 濮 牛 寿 通 边 扈 燕 冀 郏 浦 尚 农 " 19 + "温 别 庄 晏 柴 瞿 阎 充 慕 连 茹 习 宦 艾 鱼 容 向 古 易 慎 " 20 + "戈 廖 庾 终 暨 居 衡 步 都 耿 满 弘 匡 国 文 寇 广 禄 阙 东 " 21 + "殴 殳 沃 利 蔚 越 夔 隆 师 巩 厍 聂 晁 勾 敖 融 冷 訾 辛 阚 " 22 + "那 简 饶 空 曾 毋 沙 乜 养 鞠 须 丰 巢 关 蒯 相 查 後 荆 红 " 23 + "游 竺 权 逯 盖 益 桓 公 万俟 司马 上官 欧阳 夏侯 诸葛 " 24 + "闻人 东方 赫连 皇甫 尉迟 公羊 澹台 公冶 宗政 濮阳 " 25 + "淳于 单于 太叔 申屠 公孙 仲孙 轩辕 令狐 钟离 宇文 " 26 + "长孙 慕容 鲜于 闾丘 司徒 司空 亓官 司寇 仉 督 子车 " 27 + "颛孙 端木 巫马 公西 漆雕 乐正 壤驷 公良 拓跋 夹谷 " 28 + "宰父 谷梁 晋 楚 闫 法 汝 鄢 涂 钦 段干 百里 东郭 南门 " 29 + "呼延 归 海 羊舌 微生 岳 帅 缑 亢 况 后 有 琴 梁丘 左丘 " 30 + "东门 西门 商 牟 佘 佴 伯 赏 南宫 墨 哈 谯 笪 年 爱 阳 佟 " 31 + "第五 言 福"; 32 33 /// <summary> 34 /// 姓氏列表 35 /// </summary> 36 string[] arrLastName = null; 37 /// <summary> 38 /// 生成的名字列表 39 /// </summary> 40 List<string> listCnNames = new List<string>(); 41 /// <summary> 42 /// 名字字符的个数 43 /// </summary> 44 Random rdCharCount = new Random(); 45 /// <summary> 46 /// 姓氏在姓氏列表中的索引 47 /// </summary> 48 Random rdLastNameIndex = new Random(); 49 /// <summary> 50 /// 名字的字符对应的十进制 51 /// </summary> 52 Random rdFirstName = new Random(); 53 54 public GetChineseNames() 55 { 56 arrLastName = strLastName.Replace(" ", " ") 57 .Replace("\t", " ").Split(new char[] { ' ' }); 58 } 59 /// <summary> 60 /// 随机姓名 61 /// </summary> 62 /// <returns></returns> 63 public string GetTestData() 64 { 65 string name = ""; 66 //姓 67 name+=arrLastName[rdLastNameIndex.Next(0,arrLastName.Length-1)]; 68 //名 69 int iCharCount = rdCharCount.Next(1, 2); 70 for (int iCharCountIndex = 1; iCharCountIndex <= iCharCount; iCharCountIndex++) 71 { 72 name += (char)rdFirstName.Next(16128, 36597); 73 } 74 return name; 75 } 76 }