(UTF-8)ASP汉字转拼音函数(附Access数据库)
很久以来没有一个很好的,能够在UTF-8编码的ASP中汉字生成拼音的函数。当使用ASCW得到一个汉字的ASCII码值的时候也是没有任何规律来获得一个汉字的拼音。测试了很久也没有找到一个很好的办法,后来发现在MS SQL中当Chinese_PRC_CS_AS_KS_WS排序时,可以划定汉字拼音的区域,经过整理,终于可以实现在UTF-8编码下汉字转拼音,随时制作出来了MS SQL汉字转拼音函数。但是不是所有的网站都能够使用MS SQL 数据库,经测试在Access数据库中汉字的排序和MS SQL中的Chinese_PRC_CS_AS_KS_WS排序一致,这是一个不小的惊喜,所以制作出来一份“(UTF-8)ASP汉字转拼音函数(附Access数据库)”。不过完全依靠ASP程序是完成不了的,所以需要附加一个拼音对照数据库。
希望这个程序能够很好的服务与大家,也请大家转载和使用的时候保留作者信息。
<%
'---------------------------------------------------------------
' Hanzi to Pinyin Function
' Copyright (c) 2009 Sean.Leo
' 流香羽/27879669
' Date: 2009-06-02 09:35
'---------------------------------------------------------------
Function Hanzi2Pinyin(strHanzi)
Dim objConn
Dim chrHanzi
Dim intHanziAsc
Dim i
Hanzi2Pinyin = ""
If strHanzi > "" Then
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open "Provider = Microsoft.Jet.OLEDB.4.0;Data Source = " & server.mappath("pinyin.mdb") '汉字拼音对照数据库
For i = 1 to Len(strHanzi)
chrHanzi = Mid(strHanzi, i, 1)
intHanziAsc = Ascw(chrHanzi)
If intHanziAsc < 0 Then intHanziAsc = intHanziAsc + 65536
If intHanziAsc < 127 Then '英文
Hanzi2Pinyin = Hanzi2Pinyin & chrHanzi
ElseIf intHanziAsc >= 19968 and intHanziAsc <=33367 Then '汉字
Hanzi2Pinyin = Hanzi2Pinyin & objConn.Execute("select top 1 Pinyin from CollatePinyins where Word >= '" & chrHanzi & "' order by Word asc")(0)
Else '其他标点字符
Hanzi2Pinyin = Hanzi2Pinyin & "-"
End If
Next
objConn.Close
Set objConn = Nothing
End If
End Function
' 测试
response.write Hanzi2Pinyin("欢迎使用流香羽的汉字转拼音函数")
%>
(UTF-8)ASP汉字转拼音函数(附Access数据库)相关推荐
- mysql汉字转拼音函数
-- 创建汉字拼音对照临时表 CREATE TABLE IF NOT EXISTS `t_base_pinyin` (`pin_yin_` varchar(255) CHARACTER SET gbk ...
- SQL 汉字转拼音函数(转)+将表中汉字转拼音
[叶子函数分享五十四]汉字转拼音函数 分类: SQL函数分享系列2011-03-30 22:10 290人阅读 评论(0) 收藏 举报 /* ----------------------------- ...
- 汉字转拼音函数(sqlserver)
http://www.cnblogs.com/zhuisuo/archive/2011/01/12/1933842.html ------------------------------------- ...
- 谈谈SQL数据库中滥用临时表、排序的解决方案优化(举例:汉字转拼音函数)...
游标.临时表.触发器.COLLATE等等-- 无可厚非.这些都是好东西,我为什么今天要花时间来写这些东西呢? 是因为我发现慢慢的很多人用久了这些东西之后会形成一种习惯,不管解决什么问题动不动都会把它们 ...
- 谈谈SQL数据库中滥用临时表、排序的解决方案优化(举例:汉字转拼音函数)
游标.临时表.触发器.COLLATE等等-- 无可厚非.这些都是好东西,我为什么今天要花时间来写这些东西呢? 是因为我发现慢慢的很多人用久了这些东西之后会形成一种习惯,不管解决什么问题动不动都会把它们 ...
- ASP.Net下如何解决关于Access数据库“操作必须使用一个可更新的查询”问题
当我们在开发环境下Access数据库中记录的更新,删除,新建都没问题.但是将网站在实际中运行时会出现"操作必须使用一个可更新的查询"这样问题.其实这是文件访问权限的问题.尤其文件系 ...
- 500多条汉字常见错别字题库ACCESS数据库
之前发过一个叫<汉字英雄100个最容易错误的汉字>的ACCESS数据,严格的说这个数据库不算题库,因为没有选项:而今天的这个<汉字常见错别字题库ACCESS数据库>却是有选项的 ...
- 【叶子函数分享五十四】汉字转拼音函数
/* ------------------------------------------------------------- 函数: fn_GetPinyin 描述: 汉字转拼音(无数据表版) 使 ...
- 汉字转拼音函数 linux,汉字转拼音占内存更少转换速度更快的程序
借鉴使用Redis字符操作库SDS,简化程序编写,提高安全性和可移植性. 本汉字转拼音程序仅支持输入字符串是utf-8编码的情况,其它编码,程序会不做处理 原文输出. 将常见20902个汉字的拼音按照 ...
最新文章
- 支付宝支付 第二集:傻瓜式教程->获取支付的RSA公钥和私钥
- dSploitzANTI渗透教程之HTTP服务重定向地址
- go中NOSQL数据库操作
- 数学建模学习笔记——层次分析法(评价类,专家打分一般不用)
- MySQL主从复制Windows实现
- JAVA基础知识(6)
- sql 相加_SQL多表查询
- Graph QL和SAP Graph的区别
- 帮 vs2019 找回丢失的 SDK
- MSG_PEEK标志
- Beauty Of Unimodal Sequence(HDU-6592)
- [Ext JS 4] 实战之浏览器兼容
- matlab估计arma残差,python ARIMA 时间序列
- ob_start()函数
- 初步学习pg_control文件之十四
- 计算机专业有关电路的书,计算机专业电路基础试题.doc
- mysql 高可用方案
- Hbase最新官方文档中文翻译与注解1-10|hbase简介与配置信息等
- PostGISGeography支持功能PostGIS Geography Support Functions
- 赋能B端,AI物联网“涂鸦智能”完成近2亿美元C轮融资
热门文章
- 2020年最好用的手机是哪一款_2020年vivo手机哪款口碑最好_2020年vivo手机哪个系列比较好用...
- 【数据集转换】VOC数据集转COCO数据集·代码实现+操作步骤
- ef mysql 约定_EF 数据库连接约定(Connection String Conventions in Code First)
- 如何运用计算机教学教学的收获,计算机教学中行动感悟法的应用
- 【渝粤题库】广东开放大学 建筑施工技术 形成性考核
- OPPO手机备份微信数据文件到电脑本地方法教程
- 控制系统分析常用命令
- H3C无线AC+AP配置2—有密码登录
- Cocos2dx游戏教程(序):火爆抖音的网红口红机真能扎到口红吗?
- Altium Designer之PCB库部分名称区分