用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】Mutex互斥量线程同步的例子

    0.互斥量  Windows下的互斥量 是个内核对象,每次WaitForSingleObject和ReleaseMutex时都会检查当前线程ID和占有互斥量的线程ID是否一致. 当多次Wait**时就 ...

  2. Android百度地图开发(三)范围搜索

    // 1.新建项目 将地图API添加进classpath中: 2.在activity_main.xml中添加一个MapView,用来显示地图: <LinearLayout xmlns:andro ...

  3. 从高铁G18中高端如厕看12306的验证码

    1.引子 最近疯狂的吐槽12306网站的虐心验证码. 从对铁老大的一贯作风来说,这个事不过是芝麻绿豆的事情.这个事件只是因为发生在网络上,而引起了广大网民的一致谴责而已. 相信更丰富的如厕经历,大家只 ...

  4. python中的文件

    Python文件 1.    概述 文件对象不仅可以用来访问普通的磁盘文件,也可以访问任何其他类型抽象层面上的文件. 内建函数open()以及file()提供了初始化输入输出(I/O)操作的通用接口. ...

  5. Leetcode 225 Implement Stack using Queues

    Implement the following operations of a stack using queues. push(x) -- Push element x onto stack. po ...

  6. linux下expect使用教程

    一.expect介绍 Expect是Unix系统中用来进行自动化控制和测试的软件工具,由DonLibes制作,作为Tcl脚本语言的一个扩展,应用在交互式软件中如telnet,ftp,Passwd,fs ...

  7. 终于把你必须知道的.NET看完了

    终于把你必须知道的.NET看完了,第二步就是把精通ASP.NET MVC3框架这本书搞定,练习MVC3的使用,并把EF,LINQ也练习一下,期间要做一个项目“多用户微信公众平台”项目,最近微信公众平台 ...

  8. html5 canvas图片渐变

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  9. Django 的 CSRF 保护机制(转)

    add by zhj:假设用户登录了网站A,而在网站B中有一个CSRF攻击标签,点击这个标签就会访问网站A,如果前端数据(包括sessionid)都放在本地存储的话, 当在网站B点击CSRF攻击标签时 ...

  10. ntpdate server时出错原因及解决

    错误1.Server dropped: Strata too high 在ntp客户端运行ntpdate serverIP,出现no server suitable for synchronizati ...