我支持一个用 Tcl 编写的网站,它以繁体中文 (big5) 显示数据。然后我们有一个 Java servlet,使用 mandarintools.com 的翻译代码,将页面请求翻译成简体中文。指定到翻译代码的转换是从 UTF-8 到 UTF-8S;Java 显然正确地将数据转换为 UTF-8。
Java 翻译代码可以工作,但速度很慢,而且由于该网站是用 Tcl 编写的,因此另一个列表中的某个人建议我尝试使用它。不幸的是,Tcl 不支持 UTF-8S,我一直无法弄清楚用什么翻译来代替它。我已经尝试过 gb2312、gb2312-raw、gb1988、euc-cn ......都导致乱码。我的假设是 Tcl 也正在转换为 UTF-8,尽管我已经尝试先从 big5 转换它并没有帮助。
我的测试代码如下所示:
set page_body [ns_httpget http://www.mysite.com]
set translated_page_body [encoding convertto gb2312 $page_body]
ns_write $translated_page_body
我也试过
set page_body [ns_httpget http://www.mysite.com]
set translated_page_body [encoding convertto gb2312 [encoding convertfrom big5 $page_body]]
ns_write $translated_page_body
但这并没有改变什么。
有没有人有足够的经验来帮助我解决这个问题?