2012-05-10 59 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

回答