2012-05-10 36 views
0

我正在重写我们的一个表单,以便它可以处理国际域名,但在我开始之前,我认为我会测试处理IDN的功能。Coldfusion with Java IDN处理国际域名

我的想法是,如果有人进入一个域名如:http://清华大学.cn我将它作为punycode存储在我的数据库中。考虑到这一点我随后找到了Java的IDN处理程序,并写此位的测试代码:

<cfset strUrl = "http://清华大学.cn" /> 
<cfoutput> 
#strURL# 
</cfoutput>  
<!--- Create a Java URL. ---> 
<cfset jUrl = CreateObject("java", "java.net.IDN").toAscii(strUrl) /> 

<cfoutput> 
#jURL# 
</cfoutput> 

然而,在运行此我得到一个错误:

A prohibited code point was found in the inputhttp://æ ̧...å�žå¤§å¦

这发生在.toAscii线。我错过了什么?

+0

岂不ASCII事实上禁止这些更高的字符集?没有“toUtf8()”方法吗? –

+0

我不确定你在说什么。你是否建议我在将字符串转换为ASCII之前需要转换字符串? – Jarede

+0

http://stackoverflow.com/questions/1510794/whats-the-proper-technical-term-for-high-ascii-characters – Sharondio

回答