利用Perl库XML::WBXML,
就可以执行XML和WBXML(Wap Binary XML)之间的自由转换了:
use XML::WBXML;
$wbxml = XML::WBXML::xml_to_wbxml($xml);
$xml = XML::WBXML::wbxml_to_xml($wbxml);
下面我说一下如何编译这个包。阅读全文>
发表于 @ 2005年09月20日 19:16:00|评论(loading...)|收藏
本脚本是对《[Perl]FTP自动上传文件的脚本以及配置文件》的多线程扩展,
当然首先对方FTP站点允许同一个IP发起多个连接。
ithreads支持
Perl5.6.0已经加入了ithreads支持,我们通过
use threads;
导入threads多线程处理包;并且通过
use threads::shared;
使用线程间共享变量。
在定义全局并线程间共享的变量时,要这样写:
my $CurrentThreads: shared = 0; #当前线程总数
因为在Perl的实现中,线程并不是像pthread那样共享变量,而是大家都分开,如同原来的进程一样。如果想让一个变量共享,须要显式地指定它才行。
等待线程的完全退出
通过不断地调用
my $thread = threads->create('processFile', $srcpath, $dstpath, $dstdir);
启动了多干个线程后,我们这里一定要调用
push(@$self, \$thread);
因为,创建一个thread以后要用join取得该thread的返回值,然阅读全文>
发表于 @ 2005年01月16日 16:21:00|评论(loading...)|收藏
测试自己的业务数据远程传送服务,需要一个能模拟对方Socket的服务,
这时候就显出Perl的便利了。一分钟搞定。
代码如下,其实也是从CPAN那里拿来的。阅读全文>
发表于 @ 2005年01月14日 21:55:00|评论(loading...)|收藏
本应用程序设计的几个基本理念是:
工具箱再利用: 尽可能利用已有的工具;
简化运行步骤; 不引入过多的业务逻辑,满足的需求越简单越好。
所以,我们定义了本应用程序依赖于以下几个工具的运行:
ActivePerl-5.8.4.810-MSWin32-x86
Upload.pl
Upload.config
我们将主要的执行逻辑都放在Perl源文件Upload.pl中了,配置文件为Upload.config。
这个perl文件将执行的任务是, 按照指定的文件夹目录,自动将该文件夹下的所有文件上传到指定ftp站点的指定目录下。
这个Perl脚本实际是从Uwe Keim 的《Perl Script for uploading modified files to a FTP-Server》继承下来的,
只不过增加了容错反应和读取外部配置文件的部分,刨掉了与一般业务逻辑无关的读写access文件的部分。阅读全文>
发表于 @ 2005年01月05日 21:40:00|评论(loading...)|收藏