您的位置:IT教程网首页>网站建设教程>html>WAP开发中的中文显示问题

WAP开发中的中文显示问题

在WAP的开发中经常会遇到一些浏览器不支持中文的情况,这个时候要把中文GB2232转换成Unicode格式。
转换成Unicode格式并不麻烦,只需要在字符的ASCII值前面加上“#x”,后面加上“;”就可以了。

ASP WML Access制作


<%@Language=VBScript%>
<%Response.ContentType="text/vnd.wap.wml"%><?xmlversion="1.0"encoding="gb2132"?>
<!DOCTYPEwmlPUBLIC"-//WAPFORUM//DTDWML1.1//EN""http://www.wapforum.org/DTD/wml_1.1.xml">
<%
dimconn
setconn=server.createobject("adodb.connection")
conn.open="provider=microsoft.jet.oledb.4.0;"&"datasource="&server.mappath("data.mdb")
Setrs_placard=Server.CreateObject("adodb.Recordset")
sql="select*fromplacardorderbyiddesc"
rs_placard.opensql,conn,3,3
%>
<%
Functionuni(Chinese)
Fori=1toLen(Chinese)
a=Mid(Chinese,i,1)
uni=uni&"&#x"&Hex(Ascw(a))&";"
next
EndFunction
%>
<wml>
<cardid="main"title="ASPWeb">
<p>
今天时间是:<br/>
<%=Now()%>
</p>
<p><%=uni(rs_placard("placard_content"))%><br/><br/></p>
<p>Data:<%=uni(rs_placard("placard_time"))%></p>
</card>
</wml>
<%

rs_placard.close()
Setrs_placard=Nothing
conn.close()
Setconn=nothing
%>

以上显示效果为:


今天时间是:
2004-10-1415:38:46

漫长的十一假期终于结束了,又要投入到新的工作中了,网站的更新我也将会继续,要是遇到好的教程和文章,D5S会第一时间加入到栏目中,感谢广大网友对我们的支持。

http://www.chinahtml.com

data:2004-10-8

转换函数:


<%
Functionuni(Chinese)
Fori=1toLen(Chinese)
a=Mid(Chinese,i,1)
uni=uni&"&#x"&Hex(Ascw(a))&";"
next
EndFunction
%>

其他方法:(以下转自http://blog.csdn.net )
1.全部采用utf-8。在文件开头


<?xmlversion="1.0"encoding="UTF-8"?>
<!DOCTYPEwmlPUBLIC"-//WAPFORUM//DTDWML1.3//EN""http://www.wapforum.org/DTD/wml13.dtd">
<%@pagecontentType="text/vnd.wap.wml;charset=UTF-8"%>

2.在web.xml中设置


<context-param>
<param-name>weblogic.httpd.inputCharset./*</param-name>
<param-value>UTF-8</param-value>
</context-param>

或者在文件里加上request.setCharacterEncoding("utf-8");

3.文件里先用检体中文写,然后找个软件把中文转成utf-8;

4.最好不要用<ahref="">而改用<anchor><gohref=""><postfield>,我发现传中文utf的时候,第一种

情况有些模拟器不支持。

现在中文问题基本没有额外转化的处理了。