javascript中存在几种对URL字符串进行编码的方法:escape(),encodeURI(),以及encodeURIComponent()。这几种编码所起的作用各不相同。
escape() 方法:
采用ISO Latin字符集对指定的字符串进行编码。所有的空格符、标点符号、特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集表里面的编码的16进制数字)。比如,空格符对应的编码是%20。
不会被此方法编码的字符: @ * / +
encodeURI() 方法:
把URI字符串采用UTF-8编码格式转化成escape格式的字符串。
不会被此方法编码的字符:! @ # $& * ( ) = : / ; ? + '
encodeURIComponent() 方法:
把URI字符串采用UTF-8编码格式转化成escape格式的字符串。与encodeURI()相比,这个方法将对更多的字符进行编码,比如 / 等字符。所以如果字符串里面包含了URI的几个部分的话,不能用这个方法来进行编码,否则 / 字符被编码之后URL将显示错误。
不会被此方法编码的字符:! * ( ) '
因此,对于中文字符串来说,如果不希望把字符串编码格式转化成UTF-8格式的(比如原页面和目标页面的charset是一致的时候),只需要使用escape。如果你的页面是GB2312或者其他的编码,而接受参数的页面是UTF-8编码的,就要采用encodeURI或者encodeURIComponent。
另外,encodeURI/encodeURIComponent是在javascript1.5之后引进的,escape则在javascript1.0版本就有。
参考文章: Comparing escape(), encodeURI(), and encodeURIComponent()
标签 ( Tags ) : encoding,javascript
Joseph Laszlo 罗列了他目前所能想象到的Google Talk诞生的五大理由:
5. Larry 和 Sergey (Google创始人)不想再为找到办公室的某个人而喊破喉咙了
4. Skype的利润太诱人了
3. Google认为最近一段时间的动作还没有真正把市场搅得天翻地覆
2. Google还不满足于仅仅通过查阅你的Email和记录你每天所搜索的那些XXX图片来了解你的个人隐私
1. 想找到另外的交流途径来拒绝跟CNET交谈
除了这些,你还能想到什么其他怪异的理由来解释Google为什么做出Google Talk :)
标签 ( Tags ) : google,skype,google_talk
NLP是Natural Language Processing的缩写,至于排在搜索结果第一位的这位Susan Dumais,则碰巧是MSN Search team的研发人员。
微软的Blogger Robert Scoble对此评论道:someone at Google is saying "hey, Susan, come work for us."。
联想到之前李开复的惊天一跳,看来Google在成功挖到主力统帅之后,开始打这些得力干将的主意了。这样持续的挖墙脚,就算自身的实力没有什么实际的进步,至少也能大大削减微软的战斗力,有够损。
不过对于Google这样明显而又有趣的暗示方式,对于Susan来讲可真是难以拒绝的诱惑。
标签 ( Tags ) : 程序员
昨天贴了一篇关于beyond的歌曲mp3,采用的是最常见的 <object id="mplayer" type="application/x-oleobject" classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95" ... 写法,结果发现在Firefox上根本播放不出任何内容。到紫竹梦轩的首页去听她置顶的歌曲,同样也是连播放器都看不到。看来这个又是IE Only的XHTML语法了。怎么改?
要显示兼容与IE/Firefox/Opera等浏览器的在线播放器,测试下来比较鲁棒的应该是如下的xhtml代码写法:
<object type="application/x-mplayer2" width="610" height="48" align="" data="/images/beyond_WhoWillGoWithMe.mp3">
<param name="src" value="/images/beyond_WhoWillGoWithMe.mp3" />
<param name="filename" value="/images/beyond_WhoWillGoWithMe.mp3" />
<param name="type" value="application/x-mplayer2" />
Sorry, Your Browser Does not support this player. Please Try IE or Fx to play this media.
</object>
感谢雨吁的Blog所介绍的xhml页面插入mp3的四法之比较。
Google executives say they plan to unveil on Wednesday a "communications tool" that is potentially a clear step beyond the company's search-related business focus.
While executives would not disclose what the new software tool might be, Google has long been expected to introduce an instant messaging service to compete with services offered by America Online, Yahoo and MSN from Microsoft.
A new Google strategy to enter the communications world could raise even more interesting questions than the current Silicon Valley hubbub over what it might choose to buy.
如
![]() |
Update:网上已经有人贴出了Google Talk的使用截图。据说Google Talk将集成IM, VoIP, Gmail等功能,产品通讯基于开放的Jabber协议。Gtalk使用Gmail账号作为用户名,连接服务器为talk.google.com(Web页面仍不可连接),端口号为5222(XMPP标准)。
Google Talk Client下载地址: http://www.google.com/talk/ (900k)
标签 ( Tags ) : google,google_talk
今天偶然在Calfen的Blog上挖到一张照片,原来我现在每次pb(不是PowerBuilder,是Play Basketball)的时候必喝的脉动都出了N个版本了:
照片是他去年骑车游太湖的时候拍的,不知道喝了这些“咏动”“激动”们没有。
这种仿冒文化,给我记忆最深的当属风靡一时的金庸/全庸/金庸新了。时至今日,类似的偷梁换柱的手法还是屡屡被那些“创业家”们拿来耍弄,真是:招数不怕旧,只要它管用。
据说克林顿的正版《回忆录》还没翻译完工的时候,伪版《我的生活:克林顿回忆录》已然上市了。《挪威的森林
》一火,就来了位莫须有的“村上春树情人”―福原爱姬,出了一本《挪威没有森林》。可见,在昧良心赚钱这方面,人类是非常有共性的。
据说Yahoo Mail 和 Hotmail 的最新版本中都将提供邮件的快速预览功能,而目前的Gmail所提供的预览方式只是在邮件主题显示邮件内容的最前面的一部分文字。对于用户来说,当然希望能够看到更准确和完整的预览内容。Gmail Conversation Preview Greasemonkey 脚本帮Google实现了这个功能。作者甚至详细说明了写这段脚本代码的来龙去脉。当然,要使用这个功能,你必须使用Firefox浏览器,同时安装了Greasemonkey 0.5 插件。也许,以后这个预览泡泡的功能将会成为Gmail的标准功能,造福所有的用户 :)
UPDATE: 据说Greasemonkey超强的个性化定制功能遭到了Google的严重警告,凡安装任何有关"修改"Gmail的Greasemonkey的用户即日起会遭受暂停帐户的处分,直到用户将所安装的Greasemonkey卸除为止。所以想尝尝鲜的要谨慎了 :(
Michael Buffington在他的Blog上写道:他放弃用了近10年的ColdFusion,转而投向Ruby on Rails阵营,是因为其几个优点:
- 严格的MVC框架实现
- 简便快速的代码生成器
- 简洁的代码语法
- 属于开源软件
- 活跃的技术讨论社区
对我来说,如果有一天我也开始成为Ruby on Rails的铁杆支持者,这些理由应该也足够了。
phpXplorer是一个很酷的Web界面的服务器文件管理系统。只需要有PHP环境即可。能够通过浏览器进行服务器上文件的添加删除上下载等各种操作。具有用户/角色权限管理功能。如果Web Server是Apache的话可以提供更加高级的服务。
里面有个“共享”的概念。类似可访问目录。用root用户登陆以后再右边那个窗口的“系统”菜单选择之后可以进行管理员的各种管理操作。其中可以添加“可用共享”,即添加一个可以提供给用户访问的目录。然后把这个共享提供给某个用户或者角色,这些人就能看到这个目录下的东西并进行“文件”操作。
好像网上没找到汉化的版本,自己做了一个。同时这个系统没有操作日志记录功能,对于需要多用户使用的环境来说是一个缺憾。因此在我的这个汉化版本里面增加了日志记录功能,对于关键的文件添加/修改/删除操作进行了Logging。
初始超级用户: root / root
解压之后整个目录上传即可。首次访问会自动跳转到system/install.php进行安装检测,如果一切设置都没问题就可以进入使用了,否则请安装install界面的提示信息对错误进行修正。
原始英文版本(1,763,765 字节):
phpXplorer_0.9.33.zip
汉化+日志功能增强版本(1,638,123 字节):
phpXplorer_0.9.33_zh.rar
Updated 2005-11-10 19:47 -- 有朋友指出汉化版本对于包含中文的文件名不支持,这两天凑空把几个关键文件转化成utf-8格式,基本上可以支持对中文的访问(只是在下载的时候保存的文件名会变成乱码,但所下载的内容应该是正确的。这个似乎和Apache服务器的配置有关)
修改涉及的文件清单:
system/config.php
system/classes/pxCLS_system_class.php
system/tmp/lang.pxLNGd/zh.pxLNG.php
modules/TinyMCE/lang.pxLNGd/zh.pxLNG.php
modules/TinyMCE/includes/tinymce/jscripts/tiny_mce/langs/zh_cn.js
修改之后的版本可以在这里下载(1,638,637 字节):
phpXplorer_0.9.33_zh_utf-8.rar
标签 ( Tags ) : webclient,ftp,phpxplorer,源代码,下载
TIOBE根据在全球范围内的被使用程度以及各大搜索引擎(Google,MSN,Yahoo!)的数据计算出各种编程语言的当前流行指数。Java]在屈居次席10个月之后,重新回到排行榜老大的位置。
这个排名并不表示哪个语言是最好的,也不表示用哪个语言写的实际代码行数最多。但对于广大的程序员或者系统架构师来说,根据语言的流行趋势来考虑接下来做项目的时候采用何种技术架构和语言实现,是一件很实际的事情。
C#看来是势不可当了:剽窃别人的劳动成果并发扬光大向来是微软的拿手好戏;PHP的式微让我有点伤感。
| Position | (Position) | Programming Language | Ratings | (Ratings) | Status |
|---|---|---|---|---|---|
| 1 | = | Java | 21.206% | +4.21% | A |
| 2 | = | C | 19.473% | +3.14% | A |
| 3 | = | C++ | 10.514% | -4.79% | A |
| 4 | ↑↑ | Perl | 9.884% | +1.44% | A |
| 5 | ↓ | PHP | 7.873% | -2.55% | A |
| 6 | ↓ | (Visual) Basic | 7.757% | -2.38% | A |
| 7 | ↑↑↑ | C# | 3.485% | +1.85% | A |
| 8 | = | Python | 2.883% | -1.82% | A |
| 9 | = | JavaScript | 1.921% | +0.24% | A |
| 10 | ↓↓↓ | Delphi/Kylix | 1.763% | -3.05% | A |
| 11 | ↑ | SAS | 1.296% | +0.57% | A |
| 12 | ↑ | COBOL | 1.039% | +0.51% | A |
| 13 | ↓↓ | PL/SQL | 0.966% | -0.46% | A |
| 14 | ↑↑↑ | Lisp | 0.688% | +0.36% | A- |
| 15 | ↑ | VB.NET | 0.678% | +0.01% | A- |
| 16 | ↑↑ | Fortran | 0.591% | +0.26% | A- |
| 17 | ↓↓ | IDL | 0.559% | +0.21% | A- |
| 18 | ↑ | Ada | 0.502% | +0.18% | B |
| 19 | ↓↓↓↓↓ | Pascal | 0.493% | -0.26% | B |
| 20 | ↑↑↑↑ | ABAP | 0.428% | +0.18% | B |
原始的排名原则和计算方式以及前50名的排行榜可以参考TIOBE的TIOBE Programming Community Index for August 2005
标签 ( Tags ) : tiobe
对于日常的Web开发,越来越觉得疲于应付,跟不上需求部门的节奏。他们可以一天之内灵光闪现提出十几个需求来,同时会对基本上已经完成的东西再提出几十个的修改意见。这种状况对于目前有限的开发人力来说是一种折磨。即便用上了Structs之类的Framework,似乎对于开发进度的提高有限,有时候还有反作用。
Ruby on Rails悄悄的来了,不少相关的介绍文章让我心动不已,给我一种“轻量级+Agile Web开发的神兵利器”的感觉。何况据说速度比目前流行的struts+spring+hibernate还要快15%-30%。这种好东西无论如何要去研究一下。
订阅了几个关注Ruby on Rails
的rss feed,开始看
Agile Web Development with Rails
[1]和koalant的Ruby on Rails实践,努力学习中。。
注:
[1]最近把空间移到 dreamhost
,老美的东西什么都好,就是版权管理也比较严,呵呵。放在那里没几天, dreamhost 因为收到出版商 Pragmatic Bookshelf 的投诉自动把我提供下载的AWDR pdf文档给移掉了。所以本下载链接永久失效。有需要的朋友可以直接给我发Email(或者找Pragmatic Bookshelf去买一本,嘿嘿)。
标签 ( Tags ) : weblogic





