汉字数据字典
发布时间:2020-12-14 06:16:23 所属栏目:百科 来源:网络整理
导读:如何获取全部汉字及汉字的详细信息? 刚刚扒了一通汉字完整的数据字典,mark作下记录。 所有汉字集合 我们匹配中文字符时,经常使用Unicode字符"[^u4e00-u9fa5]"正则表达式来校验。 十六进制,从4e00到9fa5,转化为十进制后,可知共有20901个汉字。 汉字的
如何获取全部汉字及汉字的详细信息? 刚刚扒了一通汉字完整的数据字典,mark作下记录。 所有汉字集合我们匹配中文字符时,经常使用Unicode字符"[^u4e00-u9fa5]"正则表达式来校验。 十六进制,从4e00到9fa5,转化为十进制后,可知共有20901个汉字。 汉字的集合,是开源的,可以直接从网上获取。
从以上链接中,下载汉字集合 获取汉字信息汉字的详细信息,包括拼音/笔画数/部首/五笔输入/笔顺编号/注解 网上有相应的新华字典Api接口,这里选的是聚合平台-新华字典 通过他的C#源码,我们可以获取到汉字字典的详细信息 详细数据请点击下载 PS:
聚合接口-汉字获取汉字: 1 public static HanziDetail FindHanzi(string hanzi) 2 { 3 //1.根据汉字查询字典 4 string url1 = "http://v.juhe.cn/xhzd/query"; 5 6 var parameters1 = new Dictionary<string,string>(); 7 8 parameters1.Add("word",hanzi); //填写需要查询的汉字,UTF8 urlencode编码 9 parameters1.Add("key","XXXXXX");//你申请的key 10 parameters1.Add("dtype",""); //返回数据的格式,xml或json,默认json 11 12 string result2 = SendPost(url1,parameters1,"get"); 13 14 var hanziRequestResponse = JsonConvert.DeserializeObject<HanziRequestResponse>(result2); 15 16 //HanziDetail hanziDetail = null; 17 //if (hanziRequestResponse.ErrorCode == "0" && hanziRequestResponse.Result != null) 18 //{ 19 // hanziDetail = hanziRequestResponse.Result; 20 //} 21 22 return hanziRequestResponse.Result; 23 } 24 } 解析类: 1 [DataContract] 2 public class HanziRequestResponse 3 { 4 [DataMember(Name = "reason")] 5 public string Reason { get; set; } 6 7 [DataMember(Name = "error_code")] 8 public string ErrorCode { get; set; } 9 10 [DataMember(Name = "result")] 11 public HanziDetail Result { get; set; } 12 } 13 [DataContract] 14 public class HanziDetail 15 { 16 [DataMember(Name = "zi")] 17 public string Hanzi { get; set; } 18 19 /// <summary> 20 /// 部首 21 /// </summary> 22 [DataMember(Name = "bushou")] 23 public string Radical { get; set; } 24 25 /// <summary> 26 /// 拼音 27 /// </summary> 28 [DataMember(Name = "pinyin")] 29 public string Pinyin { get; set; } 30 31 /// <summary> 32 /// 笔画数 33 /// </summary> 34 [DataMember(Name = "bihua")] 35 public string Bihua { get; set; } 36 37 /// <summary> 38 /// 五笔 39 /// </summary> 40 [DataMember(Name = "wubi")] 41 public string WuBi { get; set; } 42 43 /// <summary> 44 /// 极简介绍 45 /// </summary> 46 [DataMember(Name = "jijie")] 47 public List<string> SimpleDetailContent { get; set; } 48 } 详细的源码Demo,可点击下载 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |