木子屋 Dnawo's BLOG

2009-02 归档

共 31 篇

C#实现文件夹监视

说明:测试过程中发现当复制一个文件到监视文件夹时会引发一次Created事件和多次的Changed事件!

7个顶级心理寓言

(一)成长的寓言:做一棵永远成长的苹果树 一棵苹果树,终于结果了。 第一年,它结了10个苹果,9个被拿走,自己得到1个。对此,苹果树愤愤不平,于是自断经脉,拒绝成长。第二年,它结了5个苹果,4个被拿走,自己得到1个。“哈哈,去年我得到了10%,今年得到20%!翻了一番。”这棵苹果树心理平衡了。 但是,它还可以这样:继续成长。譬如,第二年,它结了100个果子,被拿走90个,自己得到10个。 很可能,它被拿走99个,自己得到1个。但没关系,它还可以继续成长,第三年结1000个果子…… 其实,得到多少果子不是最重要的。最重要的是,苹果树在成长!等苹果树长成参天大树的时候,那些曾阻碍它成长的力量都会微弱到可以忽略。真的,不要太在乎果子,成长是最重要的。…

JAR内容清单文件(MANIFEST.MF)属性列表

属性 用途 MIDlet-Name MIDlet程序包的名称,例如"Game Pack"(必需) MIDlet-Version MIDlet的版本号(必需) MIDlet-Vendor MIDlet的创建者或提供商(必需) MIDlet-Icon 应用程序管理器把这个图标与 MIDlet-Name相关联,这是一个图形文件,以 PNG图象格式储存 MIDlet-Description 描述 MIDlet的文本 MIDlet-Info-URL 可能提供更多MIDlet和/或供应商信息的 URL MIDlet-1 KOF, , kof.kofMIDlet (必需) MIDlet-2 Golf, , golfMIDlet…

MIME设置不当导致通过JAD网络安装JAR失败

同样的JAD和JAR文件放在开发商服务器上通过JAD网络安装JAR能成功,但放在我们自己服务器上时总是安装到最后提示无法安装,最终发现是我们服务器上JAR扩展名的MIME类型为application/octet-stream,改成application/java-archive后就能安装成功了。 附: 当JAD的MIDlet-Jar-URL属性为url时,无论JAD是在手机上还是在网络服务器上都能成功安装; 当JAD的MIDlet-Jar-URL属性为相对地址时,JAD和JAR必须同时在手机上或服务器上才能成功安装;

SharpZipLib使用示例

SharpZipLib是一个使用C#编写的Zip操作类库,在VB.NET、C#或其他的.NET语言中都可以使用它创建Zip文件、并进行读取和更新等操作。SharpZipLib目前的版本为0.85,下边通过几个例子来说明它的使用(使用前需引用命名空间ICSharpCode.SharpZipLib.Zip)。 1.创建zip文件 2.创建zip文件,只能压缩文件夹 3.添加一个文件到zip文件中 4.列出zip文件中所有的文件 5.删除zip文件中的一个文件 6.解压zip文件中所有文件 注意:SharpZipLib只能解压zip格式文件,若解压rar文件,将出错:Cannot find central directory。…

DotNetZip 、SharpZipLib 和 WinZip 压缩比较

测试文件夹: ·E:\001 包含一些手机主题和图片文件,共44.7M ·E:\002 包含一些文本文件和图片文件,共313M 测试代码: 测试结果: E:\001压缩比较 DotNetZip:平均时间11s,zip文件大小44.4M; SharpZipLib:平均时间7s,zip文件大小44.3M; WinZip:平均时间5s,zip文件大小44.3M; E:\002压缩比较 DotNetZip:平均时间47s,zip文件大小32M; SharpZipLib:平均时间37s,zip文件大小30.9M; WinZip:平均时间18s,zip文件大小32.2M; 测试结论: 总体来说,三者生成的zip文件大小都差不多,DotNetZip平均使用的时间最多,SharpZipLib其次,WinZip最少,压缩的文件越大越明显。

DotNetZip使用示例

DotNetZip是一个Zip操作类库,它非常小,但也非常容易使用。在VB.NET、C#或其他的.NET语言中引用它后就可以非常容易的对Zip文件进行创建、读取或更新等操作。DotNetZip目前的版本为1.7,下边用几个例子来说明它的使用(使用前需引用命名空间Ionic.Zip)。 1.创建/更新压缩文件,zip文件存在则更新,不存在则创建 2.列出zip文件中所有的文件 3.从zip文件中删除一个文件,注意无法直接删除一个文件夹 4.从zip文件中解压出一个文件 5.从zip文件中解压全部文件 DotNetZip 1.7(dll)下载:http://www.mzwu.com/pic/200902/Ionic.Zip.rar…

C#生成Jad文件源代码

在贴出C#生成Jad文件的源代码前我们先了解下几个知识点: ·JAR文件格式以流行的ZIP文件格式为基础,用于将许多个文件聚集为一个文件; ·大多数JAR文件包含一个META-INF\MANIFEST.MF文件,它定义了与扩展和包相关的数据; ·JAD文件是一个文本文件,用于描述JAR文件,和MANIFEST.MF文件相比,它通常多了MIDlet-Jar-Size和MIDlet-Jar-URL两个属性; C#生成Jad文件的源代码: 参考文章 JAR 文件揭密:http://www.ibm.com/developerworks/cn/java/j-jar/ 根据MIDlet套件(Jar文件)自动生成jad文件:http://www.knowsky.com/362909.html…

使用Invoke解决多线程间的控件访问出错

在一个WinForm界面上有一个按钮(button1)和一个文本框(textBox1),在button1的点击事件处理程序中创建一个新的线程,并期望在新线程中更改textBox1的值,代码如下: 运行程序点击按钮后出错,提示:线程间操作无效: 从不是创建控件“textBox1”的线程访问它。下边我们用Invoke解决这一问题: 更新成功!