当前位置:编程学习 > wap >>

WML语言的基本知识

答案:

wml语言的基本知识

上一节我们介绍了wml程序的基本结构,接下来我们介绍wml语言的基本知识,主要包括wml的字符集、变量、数据类型及wml程序的基本组成部分等。

5.3.1 wml的字符集及编码

wml使用xml的字符集,即通用字符集iso/iec-10646,也即统一字符编码标准unicode 2.0。同时,wml还支持其他系列的字符集子集,例如utf-8、iso-8859-1或ucs-2等。其中:

utf-8是指通用字符集ucs(universal character set)的转换格式8(transformation format 8),主要用作传输国际字符集的转换编码。utf-8采用了ucs字符的8位编码,提供了十分安全的编码格式,可以有效避免数据传输过程中的易做图、截取及非法解密。同时,utf-8与7位ascii码完全兼容,不会影响此类编码实现的程序;它的编码规则十分严格,能够有效避免同步传输错误,而且还为支持其他字符集提供了足够的空间。

iso-8859-1字符集是国际标准化组织iso(international standardization organization)制定的ascii字符集的扩展集,能够表示所有西欧语言的字符。与 iso latin-1一样,iso-8859-1与windows环境中普遍使用的美国国家标准协会ansi(american national standards institute)的字符集极为类似,绝大多数情况下无需区分。在不特别指明的情况下,http协议均使用iso latin-1字符集。因此,为了在wml页面中表示非ascii(non-ascii)字符,开发人员需要使用相应的iso latin-1编码的字符。

ucs-2是iso 10646标准中定义的通用多8位编码字符集(universal multiple-octet coded character set)的2字节(即16位)编码标准,其字符编码值与unicode字符的标准编码值相等。

wml文档可以采用html 4.0规范所定义的任何字符编码标准进行编码处理。一般说来,wml文档的字符编码时需要转换为另外的编码格式,以与wap用户的手机浏览器所用字符标准相适应,否则,手机浏览器就无法显示wml页面中的字符。然而,编码转换时可能会丢失一些字符信息,所以,如果在用户端进行wml文档的编码转换,那么就可能导致某些结果信息丢失而不能被用户所浏览。因此,如有必要,我们应当尽量在wml页面传送到用户浏览器之前完成编码转换。

为了解决这一问题,一方面,我们需要为web服务器补充定义wml的数据类型,以让服务器可以准确传输这些数据,另一方面,我们需要制定编码转换的原则。

上一章我们曾经讲过,设置web服务器时也增加wml的数据类型,即“内容类型(content-type)”,它是通过对web服务器的mime设置进行配置的。我们补充定义的wml及wmlscript数据类型共有8种,其中前4种为必选,后4种可根据需要选用:

wml:text/vnd.wap.wml

wmlc:application/vnd.wap.wmlc(经过编码wml的数据类型)

wmls:text/vnd.wap.wmlscript

wbmp:image/vnd.wap.wbmp (bmp图像)

wmlsc:application/vnd.wap.wmlscriptc

wmlscript:text/vnd.wap.wmlscript

ws:text/vnd.wap.wmlscript

wsc:application/vnd.wap.wmlscriptc

上一个:WML程序的基本结构
下一个:WML字符使用基本规则

更多图片编程知识:
更多wap疑问解答:
新人求助QPainter
为什么程序都退出了还可以收到推送?如果大多设备都可以推送那运营商怎么办?
qt 4.7 sqlserver2000 存储过程调用
关于ANDROID4.0.1编译问题!
Android FrameBuffer读屏幕30秒后mmap失败
联通粗定位用java程序如何来请求和接受数据
为什么QT运行Android平台的程序时,mouseMoveEvent事件响应的间隔时间很长??????????
android与PC蓝牙通讯
指定大小的label 内容可变,如果内容超出label的宽度,将未能显示的部分显示在另一个label上
Android调试
android如何通过wifi连接无线打印机
运行程序,release目录下产生一个乱码文件夹
分享个某机构最新安卓资料,自己验证了
service启动不起来,掉不了service connection
求助:QT5.0 没有QPrinter吗
asp
php
Delphi
Matlab
JSP
Foxpro
JS
C/C++
C#/ASP.NET
VC++
JAVA
VB
汇编语言
html/css
CGI
XML/UML
wap
网站相关
网页素材
python
微信小程序
thinkphp
如果你遇到编程学习难题:
访问www.zzzyk.com 试试
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,