原理请参照下边的文章:

用C#生成随机中文汉字验证码的基本原理
汉字区位码表
区位码、国标码与机内码的转换关系
1)区位码先转换成十六进制数表示
(2)(区位码的十六进制表示)+2020H=国标码;
(3)国标码+8080H=机内码
举例:以汉字“大”为例,“大”字的区内码为2083
1、区号为20,位号为83
2、将区位号2083转换为十六进制表示为1453H
3、1453H+2020H=3473H,得到国标码3473H
4、3473H+8080H=B4F3H,得到机内码为B4F3H
常用汉字在16-55区,其中55区有几个空的,故要将其去除.
/// <summary> /// 随机产生常用汉字 /// </summary> /// <param name="count">要产生汉字的个数</param> /// <returns>常用汉字</returns> private List<string> GenerateChineseWords(int count) { List<string> chineseWords = new List<string>(); Random rm = new Random(); Encoding gb=Encoding.GetEncoding("gb2312"); for (int i = 0; i < count; i++) { // 获取区码(常用汉字的区码范围为16-55) int regionCode = rm.Next(16, 56); // 获取位码(位码范围为1-94 由于55区的90,91,92,93,94为空,故将其排除) int positionCode; if (regionCode == 55) { // 55区排除90,91,92,93,94 positionCode = rm.Next(1, 90); } else { positionCode = rm.Next(1, 95); } // 转换区位码为机内码 int regionCode_Machine = regionCode + 160;// 160即为十六进制的20H+80H=A0H int positionCode_Machine = positionCode + 160;// 160即为十六进制的20H+80H=A0H // 转换为汉字 byte[] bytes = new byte[] { (byte)regionCode_Machine, (byte)positionCode_Machine }; chineseWords.Add(gb.GetString(bytes)); } return chineseWords; }

c#随机产生常用汉字相关推荐

  1. java 随机生成常用汉字_Java随机生成中文汉字

    /** * 原理是从汉字区位码找到汉字.在汉字区位码中分高位与底位, 且其中简体又有繁体. * 位数越前生成的汉字繁体的机率越大. * 所以在本例中高位从171取,底位从161取, 去掉大部分的繁体和 ...

  2. java 随机生成简体汉字_Java代码实现随机生成汉字的方法|chu

    一.背景知识 GB 2312-80 是中国国家标准简体中文字符集,全称<信息交换用汉字编码字符集・基本集>,由中国国家标准总局发布,1981年5月1日实施.GB2312 编码通行于中国大陆 ...

  3. 整理的3500个常用汉字的调用字典

    3500个常用汉字的调用字典 下载地址:https://download.csdn.net/download/hj960511/85034461 资源说明: 总数目: 目录截图 实际字典情况: 调用方 ...

  4. 随机展示一个汉字,可以用来让一二年级孩子识字

    为了让孩子复习生字,本来准备去ppt,订单式ppt不能随机播放,还要先转成图片,于是找了一个前端代码,随机展示一个汉字,需要不断刷新页面,刷新一次,随机展示一个汉字 <!DOCTYPE html ...

  5. [日语]基于日语常用汉字表的音读到汉字的映射表

    音读 汉字 ア 亜 アイ 哀挨愛曖 アク 悪握 アツ 圧 アン 安案暗行 イ 以衣位囲医依委威為畏胃尉異移萎偉椅彙意違維慰遺緯易唯 イキ 域 イク 育 イチ 一壱 イツ 一逸 イン 引印因咽姻員院淫陰 ...

  6. 常用汉字的UNICODE和对应的繁体字

    常用汉字的UNICODE和对应的繁体字 UNICODE是简体字对应的 后面的繁体字是我用GOOGLE自动翻译的 UNICODE 简体字 繁体字 21834    啊    啊 38463    阿   ...

  7. 分享:常用汉字的unicode 编码

    分享:常用汉字的unicode 编码 常用汉字的unicode 编码 http://my.oschina.net/Boston/blog/92273 posted on 2012-11-28 01:1 ...

  8. paip 一千 常用汉字 高频汉字 覆盖率90

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! paip ...

  9. python 常用汉字随机生成姓名,做个记录,以备后用

    import randomxing = [ '赵', '钱', '孙', '李', '周', '吴', '郑', '王', '冯', '陈', '褚', '卫', '蒋', '沈', '韩', '杨' ...

  10. Mock生成随机数据常用的类型规则

    我们一般在模拟数据时都希望生成一些随机的数据,mock中内置了很多种不同类型的随机数据,我们可以使用它们生成各种类型的随机数据: Type Method 基本类型 boolean, natural, ...

最新文章

  1. Google Voice开始发送邀请函
  2. 【PAT - 1014】福尔摩斯的约会(简单模拟)
  3. 前端js文件合并三种方式
  4. 【Python】猜数小游戏
  5. 建立ssr服务器_如何从零打造一款轻量且天然支持SSR的个人博客系统?
  6. git 代理 git_生日快乐,Git
  7. jquery上传图片_MVC 上传图片,裁剪头像
  8. 叉积求点到平面距离_求一个点到曲线或折线的最短距离?
  9. 计算机语言排行榜2018年9月,2018年9 月编程语言排行榜JAVA稳占第一
  10. dw添加下拉菜单_dreamweaver cs6中网页制作一个带有列表下拉菜单的详细操作方法...
  11. 上海市职称英语计算机报名,全国职称计算机考试
  12. 谈谈我对Ui设计师的一些观点
  13. 怎么用简单的方法压缩手机图片
  14. 使用 Nginx 反向代理域名
  15. MobileNext:打破常规,依图逆向改造inverted residual block | ECCV 2020
  16. 【050】SylixOS全面支持C-SKY系列处理器
  17. 卡巴斯基在桌面窗口管理器中发现零日漏洞
  18. 雷达感应模块技术,在智能家电中的应用,智能传感器
  19. 数据结构:项目三、算术表达式求解
  20. [应用方案]N76E003的开发环境构建及下载测试

热门文章

  1. arcgis 利用栅格计算器计算 土地转移矩阵
  2. lcd1602c语言程序分析,51单片机驱动LCD1602程序设计(C语言).doc
  3. 存储器——存储器容量扩充
  4. Linux驱动学习--ALSA框架(二)声卡的创建--以SCO虚拟声卡为例
  5. mac os adb下载
  6. 软件测试方法和技术知识点简摘
  7. CG资源网 - Maya教程
  8. ubuntu 20.04安装输入法,微信,QQ,亲测使用很方便。
  9. MiniDump - 调试问题的基础
  10. e260dn打印机故障灯_打印机故障大全对照表