我支持用Tcl编写的网站,用繁体中文(big5)显示数据。然后,我们使用mandarintools.com的转换代码将Java servlet转换为简体中文。指定给转换代码的转换是从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
但它没有改变任何东西。
有没有人有足够的经验来帮助我解决这个问题?
答案 0 :(得分:1)
为了完整性,我被Tcl专家告知,你不能用这种方式进行转换,必须通过更换字符来完成。
答案 1 :(得分:0)
您是否有机会从Oracle获取数据?
如果是这样,看看你是否可以使用CONVERT函数转换为“utf8”到“al32utf8”,这是真正的Utf8标准,Tcl应该无缝地工作。
如果没有,好吧,我想我会等你评论。