WAP是英文“Wireless Application Protocol”的缩写,是“无线应用协议”之意。目前开发WAP主要使用的是WML标记语言。WML是一种基于XML(扩展标记语言)的一种标记语言。这种语言是为无线设备用户提供交互界面而设计的。这些无线设备包括电话、呼机和个人数字助理(Personal Digital Assistants)等等。
  WML是一种语言,但算不上是程序语言。因为WML所定义的范围只限于如何表现文字、图片以及如何建立文件的链接等。单纯使用WML构成的文件只能称之为静态网页,所以我们要想让网页具备动态功能,可以借助ASP、PHP、JSP等网页技术实现。
  QuickWAP就是一款辅助编写WAP网页程序的ActiveX组件,不仅ASP程序等能够调用其中的模块,而且还可以被应用程序轻松调用。下面我们重点介绍QuickWAP在开发WAP网页程序方面中的应用。

WAP编码转换

  首先我们来用WML语言开发一个导航页面(文件后缀为.wml),效果如图1所示。


图1

  为了更好的通用于WAP手机,我们采取了UTF-8编码。代码中需要将中文字符转换提前为UTF-8编码的形式,代码如下。

<?xml version="1.0" encoding="utf-8"?>

WAP网站导航

++++++++++++++++++

搜狐
新浪
网易

雅虎
百度
中华

++++++++++++++++++

返回上级

  如果采用ASP编写的话,我们可以动态实现UTF-8编码,这样方便了我们修改,代码如下(文件后缀为.asp)。

<?xml version="1.0" encoding="utf-8"?>

">

++++++++++++++++++

" href="http://wap.sohu.com">
" href="http://wap.sina.com">
" href="http://wap.163.com">

" href="http://wap.yahoo.com">
" href="http://wap.baidu.com">
" href="http://wap.china.com">

++++++++++++++++++

" href="Index.asp">

Function Uni(Byval Chinese)
Dim i
For i = 1 to Len (Chinese)
A=Mid(Chinese, i, 1)
Uni=Uni & "" & Hex(Ascw(A)) & ";"
Next
End Function
%>

  我们看到用ASP编写动态WAP网页程序,第一行必须声明ASP文件的处理方式。然后代码里面还要再定义转码函数,然后利用转码函数对每个中文字符进行UTF-8编码转换。
  使用ASP编写WAP程序,确实在编辑修改方面方便了很多。那么下边我们看看QuickWAP是怎样编写这个代码的,如下所示(文件后缀为.asp)。

Set Wap=Server.CreateObject("QuickWap.WapNetSdk")
Wap.CardTitle="中国被爱可以在线"
Wap.PageHeader
'以下为文件正文。
Wap.WriteRow "WAP网站导航"
Wap.WriteRow "++++++++++++++++++"
Wap.WriteOut Wap.A("确定","http://wap.sohu.com","搜狐") & " "
Wap.WriteOut Wap.A("确定","http://wap.sina.com","新浪") & " "
Wap.WriteOut Wap.A("确定","http://wap.163.com","网易") & "
"
Wap.WriteOut Wap.A("确定","http://wap.yahoo.com","雅虎") & " "
Wap.WriteOut Wap.A("确定","http://wap.baidu.com","百度") & " "
Wap.WriteOut Wap.A("确定","http://wap.china.com","中华") & "
"
Wap.WriteRow "++++++++++++++++++"
'以下为返回链接等信息。
Wap.WriteRow Wap.A("确定","Index.asp","返回上级")
Wap.PageFooter
Set Wap=Nothing
%>

  在上边的文件代码首末我们分别创建和销毁了QuickWAP的实例化对象“Wap”,PageHeader和PageFooter两个函数创建了WAP的框架,在这个框架之间您可以像编写ASP程序那样编写正文。WriteOut和WriteRow是输出字符串的函数,并且已经内置了UTF-8编码的功能,可以直接使用它们输出要显示的内容。

  比较以上三种形式的WAP程序代码,我们发现使用QuickWAP的代码最简单,除此之外他还有一个更明显的优点那就是在IE中查看也可以执行不误,而前边两个文件就必须使用手机或WAP模拟器了,在IE中浏览的效果如图2所示。


图2

  使用QuickWAP编写的程序代码兼容性好了,我们也就不用再专门做WEB网页让人们在IE中预览我们的WAP站点效果,同时您在IE中查看网页的文件源代码仍然是标准的WML代码,可以直接保存为WML文件执行。

分页功能

  假如我们想把下边的文字分页怎么办?
  "对于熟悉ASP的开发人员,很容易就能够掌握QuickWAP组件的,因为QuickWAP的诞生就是为辅助动态WAP程序产生的。"  您也许认为很简单,文字很短,有什么难的呢,对于WML文件来说可能需要做两个卡片或两个文件,而对于ASP可要编写分页函数来实现。
  在这里我们看看QuickWAP给我们提供了怎样的解决方案,我们先看分页代码实例的效果图,如图3、图4、图5所示。


图3


图4


图5

  如果让您用ASP或WML程序来编写这个程序的话,至少需要几分钟吧,请看下边用半分钟时间用QuickWAP来实现它的代码。

Set Wap=Server.CreateObject("QuickWap.WapNetSdk")
Wap.CardTitle="中国被爱可以在线"
Wap.PageHeader
'以下为文件正文。
Dim Content
Content="对于熟悉ASP的开发人员,很容易就能够掌握QuickWAP组件的,因为QuickWAP的诞生就是为辅助动态WAP程序产生的。"
Wap.WriteRow "++++++++++++++++++"
Wap.WriteRow Wap.EasyMorePage(Content,25)
Wap.WriteRow "++++++++++++++++++"
'以下为返回链接等信息。
Wap.WriteRow Wap.A("确定","Index.asp","返回上级")
Wap.PageFooter
Set Wap=Nothing
%>

  以上代码中EasyMorePage是一个功能简易的分页函数,它需要设置两个变量,第一个变量为要分页的字符串内容,第二个变量为设置每页显示的字符数量。该函数可以根据两个变量的值产生不同的翻页链接代码。

中文字符传递

  像WEB站点那样在URL地址中传递中文字符,并且正确显示,不产生乱码现象。执行的效果图6如下所示。


图6

Set Wap=Server.CreateObject("QuickWap.WapNetSdk")
Wap.CardTitle="中国被爱可以在线"
Wap.PageHeader
'以下为文件正文。
Wap.WriteRow "++++++++++++++++++"
Wap.WriteRow Wap.A("确定",Wap.ThisFileName & "?Site=" & Wap.SubmitText("WAP之家"),"点击查看您喜爱的WAP站")
Wap.WriteRow Wap.RequestText("Site")
Wap.WriteRow "++++++++++++++++++"
'以下为返回链接等信息。
Wap.WriteRow Wap.A("确定","Index.asp","返回上级")
Wap.PageFooter
Set Wap=Nothing
%>

  在上边的代码中SubmitText和RequestText分别用于提交和接收中文字符,ThisFileName动态取到此文件的名字,所以即使您改变了文件名,程序也可以顺利执行。

  在编写WAP程序时,开发者碰到的首要问题就是解决WAP中的编码、文章分页以及中文字符提交传递等问题,QuickWAP都给出了完美的解决方案。对于在数据库方面的应用QuickWAP也毫不逊色,它全力支持Microsoft SQL Server2000和Microsoft Access2000以上版本数据库,是开发功能强大的动态WAP网站不可多得的辅助软件。

  QuickWAP采用ActiveX技术让WAP程序执行更快、更稳定、更安全,只要服务器成功安装了QuickWAP,那么您就可以在WAP(或WEB)程序中调用其中的功能模块。您可以任意迁移您的WAP程序,而不必像网上很多WAP自助建站那样总是依赖于别人的框架之下,有了QuickWAP,您也可以拥有一个强大的、属于自己的WAP网站,早日实现自己企业的无线信息化。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10294527/viewspace-127182/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10294527/viewspace-127182/

一看就会QuickWAP入门(转)相关推荐

  1. 看雪学院-OllyDBG入门系列(四)内存写入 笔记

    看雪学院-OllyDBG入门系列(四)内存断点 笔记 原作地址:http://bbs.pediy.com/showthread.php?threadid=21378 作者:CCDebuger 在 Ol ...

  2. 看雪学院-OllyDBG入门系列(三)笔记

    原作地址:http://bbs.pediy.com/showthread.php?threadid=21330 作者:CCDebuger 看雪学院-OllyDBG入门系列(三)笔记 这样的编辑框中输注 ...

  3. prolog matlab,Prolog语言(耐心看完,你就入门了).ppt

    Prolog语言(耐心看完,你就入门了) string: 用双引号括起来的字符序列 例:"I am from Nanjing" symbol:有两种形式: 以小写字母开头的字母.数 ...

  4. 网站服务器linux运维,值得一看的Linux新手入门教程_网站服务器运行维护,linux教程...

    什么是Linux镜像?_网站服务器运行维护 镜像是一种文件形式,可以把许多文件做成一个镜象文件,与GHOST等程序放在一个盘里用GHOST等软件打开后,可以恢复成许多文件,总之用镜象给用户装系统就是原 ...

  5. 初学者一看就懂的入门python3(多种绘图类型)

    初学者一看就懂的入门python3(多种绘图类型) 如果你之前从未接触过python,为了方便你更好理解,麻烦先去看我的 初学者一看就懂的入门python1和2 基本绘图类型 什么是matplotli ...

  6. 自学python要看哪些书籍-Python入门自学到精通需要看哪些书籍?

    Python语言在近几年可以算得上如日中天,越来越火爆的同时,学习Python的人也越来越多了.对于不同基础的学习者来讲,学习的重点和方式也许会有差别,但是基础语法永远都是重中之重.在牢牢掌握基础知识 ...

  7. 小白都能看懂的缓存入门

    缓存是程序员必须了解的技术,无论是前端.后端还是客户端,大到复杂的系统架构,小到 CPU 或是芯片,都少不了缓存的影子. 下面只需 5 分钟,带你入门缓存技术. 什么是缓存? 缓存(Cache)本意是 ...

  8. C语言速看,C语言高速入门系列(二)

    C语言高速入门系列(二) -----转载请注明出处coder-pig 本节引言: 在前面一节中我们对C语言进行了初步的了解,学会了使用IDE进行代码的编写,编译执行! 在这一节中我们会对C语言的基本的 ...

  9. vue移动端用什么数据可视化插件_前端必看的数据可视化入门指南

    作者:董晓庆 蚂蚁金服体验技术部 这是一篇给大家提供数据可视化开发的入门指南,介绍了可视化要解决的问题和可以直接使用的工具,我将从下面几个方面给大家介绍,同时以阿里/蚂蚁的可视化团队和资源举例说明: ...

最新文章

  1. 得到当前日期前一天的零时零分零秒及当前日的零时零分零秒
  2. 从Inception v1,v2,v3,v4,RexNeXt到Xception再到MobileNets,ShuffleNet,MobileNetV2
  3. App设计灵感之十二组精美的天气预报App设计案例
  4. Linux下学C语言开发要学些什么‏
  5. 京东战当当,出版商“被”洗牌
  6. 程序员的噩梦,你遇到过哪几条?
  7. 在下拉菜单中,传递的value参数为 id时,如何拿到其 label值?
  8. Sum of AP series——AP系列之和
  9. php 检测网址是否有效
  10. Java 集合框架详解
  11. android studio打印日志语句Log.d()
  12. 关于FileSystemWatcher监听文件创建
  13. matlab求解方程2x的5次,5元二次方程求解
  14. 2019-12-04 Using PAPI to Measure Execution Time
  15. 样本不平衡 pytorch_CVPR2019 | 面对高度不均衡数据如何提高精度?这篇文章有妙招...
  16. DP动态规划--m处理器问题- m processors(FZU - 1442)
  17. 服务端渲染技术之Nuxt.js的详细使用
  18. 【中学提纲】必修一——细胞的生命历程
  19. 文本文件单词的检索与计数c语言,文本文件单词的检索与计数
  20. android 获取build,分析,读取 android build.prop

热门文章

  1. java.lang.IllegalArgumentException: bound must be positive
  2. Android verity Boot
  3. Java课程实验报告 实验四 Java网络编程及安全
  4. 2021武汉建港中学高考成绩查询,2021年武汉各区一、二、三批次高中有哪些(名单)...
  5. 2021年10月24日马丁加德纳聚会线上主题分享开启通知
  6. finereport企业微信集成总结
  7. Vision Transformer 必读系列之图像分类综述(二): Attention-based
  8. 电脑计算机桌面窄,大神讲解电脑屏幕变窄且两边是黑的鼠标点不到?
  9. 海阔凭鱼跃天高任鸟飞
  10. Java8 Zip 压缩与解压缩