用ASP实现简单的繁简转换

国际化似乎是一个很流行的口号了,一个站点没有英文版至少也要弄个繁体版,毕竟都是汉字,翻译起来不会那么麻烦:P

一般的繁简转换是使用字典,通过GB的内码算出BIG5字符在字典中的位置,读取显示之,用fso应该能够实现。这里介绍的方法思路更简单一些,用Dictionary对象,就是字典,呵呵,dicGb2Big5(gb)就是相应的BIG5。比起计算内码再依照位置读取字符简单的多吧:)

为了降低开销,把字典放在Application中,即在global.asa中建立两个application的字典对象

<OBJECT id=objGb2Big5 progid="Scripting.Dictionrary" runat="server" scope="application"> 

</OBJECT> 

<OBJECT id=objBig52Gb progid="Scripting.Dictionrary" runat="server" scope="application"> 

</OBJECT>

在application_onstart中给字典加入�项目

…… 

objGb2Big5.Add "啊", "摆" 

objGb2Big5.Add "阿", "" 

objGb2Big5.Add "埃", "甁" 

……

…… 

objBig52Gb.Add "摆", "啊" 

objBig52Gb.Add "", "阿" 

objBig52Gb.Add "甁", "埃" 

……

字典项非常多,就不都写了

做好了字典,使用的时候仅仅要查一下即可了:)

function gb2big5(str) 

dim i, l, k, t, rtn 

l = len(str) 

rtn="" 

for i=1 to l 

k = mid(str, i, 1) 

if ascw(k)>=0 and ascw(k)<128 then 

t = k 

else 

if objGb2Big5.Exists(k) then 

t = objGb2Big5.Item(k) 

else 

t = " " 

end if 

end if 

rtn = rtn & t 

next 

gb2big5 = rtn 

end function

function big52gb(str) 

dim i, l, k, t, rtn 

l = len(str) 

rtn="" 

for i=1 to l 

k = mid(str, i, 1) 

if ascw(k)>=0 and ascw(k)<128 then 

t = k 

else 

if objBig52Gb.Exists(k) then 

t = objBig52Gb.Item(k) 

else 

t = " " 

end if 

end if 

rtn = rtn & t 

next 

big52gb = rtn 

end function

測试一下看看吧

用ASP实现简单的繁简转换的更多相关文章

  1. 繁简转换OpenCC,autogb 和 autob5,iconv,python的jianfan包

    OpenCC OpenCC 是跨平台.多语言的开放中文转换库,除了基本的简繁转换功能外,用户还可以选择对不同用词习惯和异体字的处理方式. OpenCC 还提供方便的网页转换界面. OpenOffice ...

  2. JS实现页面字体繁简转换

    封装的JS代码 // 网页简繁体转换 // 本js用于客户在网站页面选择繁体中文或简体中文显示,默认是正常显示,即简繁体同时显示 // 在用户第一次访问网页时,会自动检测客户端语言进行操作并提示.此功 ...

  3. pyhanlp 繁简转换之拼音转换与字符正则化

    繁简转换 HanLP几乎实现了所有我们需要的繁简转换方式,并且已经封装到了HanLP中,使得我们可以轻松的使用,而分词器中已经默认支持多种繁简格式或者混合.这里我们不再做过多描述. ·说明 · Han ...

  4. 网站繁简切换的JS遇到的一个BUG

    公司打算进入台湾市场,最近开发了繁体版本的网站,数据库里的信息全是简体,除了网页上固定的文字手动翻译了,文章内容标题都不是繁体. 于是在网上找了一段比较流行的繁简切换的JS实现了,不过后来却发现,有些 ...

  5. C#仿google日历asp.net简单三层版本

    网上搜了很多xgcalendar的例子都是Php开发的,而且官方站上的asp.net/MVC版 在vs10 08 都报错. 所以自己重新用三层写了一下希望对大家有帮助 废话不多说了 先看看它都有些什么 ...

  6. C# 简单粗暴的毫秒转换成 分秒的格式

    C# 简单粗暴的毫秒转换成 分秒的格式 1:code(网络上很多存在拷贝或者存在bug的或者不满足自己的要求) 1 public static string RevertToTime(double m ...

  7. JS 页面繁简字转换

    // 本js用于客户在网站页面选择繁体中文或简体中文显示,默认是正常显示,即简繁体同时显示// 在用户第一次访问网页时,会自动检测客户端语言进行操作并提示.此功能可关闭// 本程序只在UTF8编码下测 ...

  8. asp.net+mvc+easyui+sqlite 简单用户系统学习之旅(三)—— 简单登录页面+sqlite+动软代码生成器的使用

    上一节讲到利用easyui的layout.tree.tab和datagrid创建用户管理的页面,注意利用到easyui的页面一定要按顺序添加jQuery和easyUI的.js和.css样式,灵活查看e ...

  9. asp.net+mvc+easyui+sqlite 简单用户系统学习之旅(二)—— easyui的简单实用

    下面开始在UserManager.Web中利用easyUI构建web. 1. 先删除自带的controllers.models和views(里面的shared和web.config可以保存)下面的文件 ...

随机推荐

  1. 【转】linux打包压缩命令

    转自:http://www.cnblogs.com/end/archive/2011/04/20/2022614.html tar命令 [root@linux ~]# tar [-cxtzjvfpPN ...

  2. eclipse quick diff功能

    Eclipse文本编辑器和Java编辑器都提供了quick diff功能.这就使得你可以快速地识别出当前所编辑文件版本和该文件的参考版本之间的不同. 如果编辑器的quick diff功能没有启用,可以 ...

  3. Real Boxing 2

    http://itunes.apple.com/ca/app/real-boxing-2/id932779605?mt=8&ign-mpt=uo%3D4

  4. 批量还原数据库 SQL Server 2008

    1.如果你够懒,不想一步一步点路径,一步一步选择 2.如果你连单个备份数据库的存储过程都不想多执行,一般每还原一个需要修改数据库名 下面的脚本适合你: /*********************** ...

  5. 使用jqueryui

    $(function () { $('#search_button').button(); /* 同时打开两个对话框 $('#reg').dialog(); $('#login').dialog(); ...

  6. 转-sketch技巧

    10个帮你UI设计提速的Sketch使用技巧 2015-4-11 09:59| 发布者: yuanxingbbs| 查看: 1129| 评论: 0   选择使用Sketch的理由很多,因为好奇跟风安装 ...

  7. kali2 ssh

    vi /etc/ssh/sshd_config 1.将#PasswordAuthentication no的注释去掉,并且将NO修改为YES 2.将#PermitRootLogin without-p ...

  8. Arduino uno R3 ISP刷Rootloader for arduino pro mini

    找了好久才发现的,好东西.介绍怎么使用uno对mini 刷Rootloader **SOLUTION** Reinstall the Arduino Pro Mini Bootloader using ...

  9. 如何申请TexturePacker注册码

    TexturePacker是一款很强大的游戏图片制作工具,网上有很多关于它的教程和说明,这里不再说它的作用和好处.这里只是说一下如何申请免费的注册码. 国人都习惯了使用免费或者破解的软件,但是使用破解 ...

  10. Mysql捕捉(网站)应用执行的语句

    如题,很多时候我们需要知道某个程序或者网站链接到额数据库到底执行了什么语句,对于MSsql来说, 比较简单,有相对应的事件查看器,但是对于mysql来说,并没有这个组件或者相关配套工具,此时我们可以 ...