2011-09-15 36 views
0

我目前正在爲我的項目之一的經典ASP工作。對於非英語語言,我得到的是盒子而不是特殊字符。我正在使用UTF-8進行渲染,但有時候這些角色會出現在框中。當我點擊刷新時,它會恢復正常。經典的ASP與非英語語言的特殊字符作爲框

我也跟着下面的所有步驟,但我仍然得到這個問題

  1. XML:

    <xml version="1.0" encoding="UTF-8"> 
    
  2. HTML:

    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
    
  3. content-type: text/html; charset=utf-8

我錯過了什麼嗎?謝謝。

+0

你是什麼意思的「下面的步驟」?你沒有發佈任何步驟 - 只有一些沒有任何上下文的文本。 – Oded

+0

我跟着下面提到的鏈接http://www.hanselman.com/blog/CommentView.aspx?guid=3bd12e81-2633-45df-b7da-3840c0e8bde7#commentstart對不起,我無法在這裏格式化 – vinod

+1

是文件編碼爲UTF-8? – Oded

回答

4

添加到您的網頁:

Response.CodePage = 65001  
Response.CharSet = "utf-8" 

它都應該正確顯示現在。

希望幫助

0

這是驚人的,但沒有人給出了什麼都是這麼做的一個完整的答案。我希望這有助於有人像我一樣,因爲它是很難找到的全貌......

----------------以前的考慮--------------

首先,確保IIS不會取代代碼頁...進入IIS,點擊網站,打開ASP模塊,對其行爲應該是>>代碼頁= 0

第二,文件本身應該被檢查,YES!該文件...打開你的文件瀏覽器在Windows(我的電腦),去你的網站的文件所在的文件夾,例如「default.asp」,右鍵點擊>>打開>>記事本然後點擊文件>>另存爲...在底部對話框中顯示「編碼」,確保它具有UTF-8,否則您將不得不在每個頁面(包括服務器端包括)中添加 <meta http-equiv="content-type" content="text/html; charset=UTF-8">,這是不正確的。

----------------頁面的正確結構--------------

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%><% 
Response.AddHeader "Content-Type", "text/html;charset=utf-8" 
%><!-- #include virtual="/conexion.asp" --> 
<!DOCTYPE html> 

<html lang="es"> 
<head> 
<meta charset="utf-8"> 
</head> 
<body> 
áéíóú 
</body> 
</html> 

它應該工作正常現在與QueryStrings,數據庫和常規的HTML ... uffff