2008年6月22日

前两个礼拜去买了一台爱可视605wifi(4G)的MP4,虽然1700的价钱挺贵的,不过605绝对对得起这个价格,尤其是那个屏幕,真是美到不行,而且分辨率720 * 576 以下的RMVB都能完美的播放,还有最好一点就是可以用wifi上网,直接看youtobe或优酷之类视频网站上的视频,省去下载的功夫。

不过美中不足的是它支持浏览PDF文件,不支持直接浏览txt文件,
这让喜欢看电子书的很是苦恼。虽然605对PDF的支持很好,但是翻页实在太慢。

后来上了一些论坛看到别人说只要把txt文件的后缀名改成html就可以用浏览器直接查看了,
于是就去试了一下,果然是可以查看了,但是效果很差:
1. 文字不会换行
2. 字体过小
3. 文件多的话,一个个修改太耗时

居于以上原因,就有自己开发了小工具把文件文件批量转换成html文件的想法,于是就花了一个上午的时间把这个工具写出来,功能挺简单的,不过够用就可以了
目前这个工具支持txt文件,可以修改字体大小,字体颜色以及背景颜色。

自己用605测试过,浏览效果还不错,跟在电脑上直接看txt文件差不多

HtmlBuilder 1.0 下载地址:
http://www.cnblogs.com/Files/NickYao/HtmlBuilder_v1.0.rar

这个工具需要.net framework 2.0 的支持, vista的用户可以不用下载.net framework 2.0
其他系统的用户可以到以下地址下载.net framework 2.0:

http://www.microsoft.com/downloads/details.aspx?FamilyID=0856EACB-4362-4B0D-8EDD-AAB15C5E04F5&displaylang=zh-cn

附加 一个转换好的电子书 黄易-翻云覆雨:

http://www.cnblogs.com/Files/NickYao/黄易-翻云覆雨.rar

 

 



posted @ 2008-06-22 18:03 小No 阅读(373) | 评论 (3)编辑

2008年5月4日

     摘要: 本文主要介绍自己在使用Unity时碰到的一个问题,及解决方案。由于本人不擅长写作,所以文字都很简单,各位还是主要看代码及DEMO吧。首先先看一下以下代码:publicinterfaceILogger{voidWrite();}publicclassFlatFileLogger:ILogger{privateMessage_message;publicFlatFileLogger(Messageme...  阅读全文
posted @ 2008-05-04 14:52 小No 阅读(1498) | 评论 (8)编辑

2008年4月15日

        在使用Asp.net Mvc MVCContrib中的Castle有时会出现No component for key HomeController was found这样的错误

        在看了园子里的《Asp.net Mvc中MVCContrib中无法使用Castle的发解决方案 》这篇文章之后,按文章的方法修改了代码,修改方法如下:

        下载MvcContrib源代码,更改MvcContrib.Castle的WindsorControllerFactory.cs中的34行CreateController方法为:

            public IController CreateController(RequestContext context, string controllerName)
            { 
                    controllerName = controllerName +
"Controller"; //更改了这里

                    IWindsorContainer container = GetContainer(context);
                   
return (IController)container.Resolve(controllerName);
            }

        这个更改方法可能仅限于MVCContrib 0.0.1.91

        这样修改使得MvcContrib.Samples.NVelocityViewFactory这个例子可以正常运行,但另一个例子MvcContrib.Samples.WindsorControllerFactory却出现类似的问题。

        因此在MVCContrib的Google论坛里提出了疑问,最后得到了解释:

        由于组件名在Windsor是区分大小写的,而ASP.NET MVC里的Controller却是不区分的。如果按上面的代码修改,mysite.com/Home/index 这个地址会正常工作,而mysite.com/home/index将会报错 ,因为home是小写。

        因此把组件名强制注册为小写是目前的解决方案,就像修改之前的代码那样:   

            public IController CreateController(RequestContext context, string controllerName)
            { 
                    controllerName = controllerName.ToLower() +
"controller"; //更改了这里

                    IWindsorContainer container = GetContainer(context);
                   
return (IController)container.Resolve(controllerName);
            }

        不过既然不用修改源代码,那MvcContrib.Samples.NVelocityViewFactory这个例子还是会出错啊,没错,这个例子是存在BUG,不过修改起来很简单。只需修改Global.asax.cs文件的一行代码:

protected virtual void InitializeWindsor()
        
{
            
if (_container == null)
            
{
                _container 
= new WindsorContainer();

                
// Add our singleton NVelocityViewFactory
                _container.AddComponent("ViewFactory"typeof(IViewEngine), typeof(Castle.NVelocityViewFactory));

                Type[] assemblyTypes 
= Assembly.GetExecutingAssembly().GetTypes();
                
                
foreach (Type type in assemblyTypes)
                
{
                    
if (typeof(IController).IsAssignableFrom(type))
                    
{
                        
//_container.AddComponentWithLifestyle(type.Name, type, LifestyleType.Transient); //修改前
                        _container.AddComponentWithLifestyle(type.Name.ToLower(), type, LifestyleType.Transient); //修改后
                        ControllerBuilder.Current.SetControllerFactory( typeof(WindsorControllerFactory));
                    }

                }

            }

        }


     
     

posted @ 2008-04-15 15:30 小No 阅读(21) | 评论 (0)编辑

2008年1月19日

优点:

  1. 方便(只要打开MSN就可以了)
  2. 快速(由于国内访问MSN空间的速度比较慢,因此使用机器人直接提交数据到MSN空间会比直接登录MSN空间写日志要快。当然前提条件是机器人服务器的网速不能跟用户的网速相差太远。如果是手机用户的话,那机器人的优势就更大了,ADSL怎样也比GPRS强吧,除非手机使用的是WIFI或者3G网络。)
  3. 隐蔽(不过这个优点也只能是针对那些上班时只能开MSN,不能浏览网页的朋友)

局限:

  1. 由于MSN一条消息只能发400个字符,所以使用i-Writer来写日志,也只能写一些400字以内的MINI日志。(后续版本可能会使用拼接消息的方式来发布日志,以便支持篇幅比较长的日志)
  2. 不支持所见即所得的编辑方式。(这个只能是暂时先用其他编辑器先写好日志,再粘贴到MSN里来代替)
  3. 不支持图片上传


posted @ 2008-01-19 13:16 小No 阅读(20) | 评论 (0)编辑

2008年1月18日

        MSN机器人i-Writer的目标就是方便快速的往Windows Live Spaces里写文章。

        i-Writer 已经参加了Windows Live Messgener 2007 机器人大赛,请大家帮忙投一下票,谢谢
        投票地址:http://contest.xiaoi.com/listRobot.do?action=showDetail&id=82

        经过几天紧张的代码编写,i-Writer今天终于上线了,该机器人的MSN账号是iWriter@live.cn,欢迎大家加为好友。
        Web版机器人: http://sp.incesoft.com:8100/engine/SP050761/webbot.htm
        i-Writer的在线服务时间是:9:30-18:00                                     点此使用机器人

        虽然到目前为止,功能还很简陋,但基本的功能都已经实现了,以下i-Writer的功能列表:

  1. 文章的增、改、删操作
  2. 获取最近发布的文章列表(最多20篇)
  3. 获取指定文章的详细信息
  4. 获取分类列表
  5. 获取个人信息
  6. 获取个人空间信息

i-Writer的使用帮助:

第1步)要想使用i-Writer成功往Windows Live Spaces里写文章,首先必须启用Windows Live Spaces的电子邮件发布。

启用电邮邮件发布的步骤:

  • 登陆到你的Windows Live Spaces
  • 顺序选择 选项-->电子邮件发布

          image

  • 勾选启用电子邮件发布复选框、填写发件人电子邮件(任意一个e-mail地址)和机密字(机密字后面在使用i-Writer时,是用来当作密码的)

          image

  • 最后点击“保存”按钮,就完成了电子邮件发布的启用。

第2步)  把iWriter@live.cn加为msn好友
第3步)  使用i-Writer指令发布文章,以下是i-Writer的指令列表:

  • setting 用户名|机密字 -- 设置您的共享空间的发布帐户.

          其中需要注意的是, 用户名不是你的msn账号,而是你的Spaces主页地址的二级域名。

          例如我的Spaces地址是:http://kokomusic.spaces.live.com/,那么用户名就是kokomusic

          机密字也不是你的MSN账号的密码,而是在启用电子邮件发布时所填写的机密字

  • recent N -- 获取最近的N篇文章, N最大值为20.
  • newpost 标题|内容 -- 发布新文章.
  • newpost 标题|内容|分类 -- 发布新文章.
  • editpost 文章ID|标题|内容 -- 更新文章.
  • editpost 文章ID|标题|内容|分类 -- 更新文章.
  • delpost 文章ID -- 删除文章.
  • categories -- 获取分类列表.
  • myblog -- 获取空间信息.
  • myprofile -- 获取个人信息.
  • help -- 打开帮助,获取命令列表.
  • ? -- 打开帮助,获取命令列表.

                一个发布一篇新文章的例子:

               如果是第一次使用,首先先设置发布帐户:

               输入命令:setting kokomusic/mypassword 

               这时i-Writer会返回一条消息:设置帐户成功

               接着输入命令: newpost 测试/测试

               这时i-Writer会返回一条消息:文章发布成功

               最后转到您的空间就可以看到刚刚发布的那篇文章了

  PS:   如果只想测试i-Writer的功能
          输入指令:setting iwriter1980|iwriter
          就可以使用i-Writer的所有功能了。


    这个机器人我是使用赢思的SDK来开发的,该SDK的接口比较简单,开发起来比较容易。
    源码下载

posted @ 2008-01-18 23:00 小No 阅读(1673) | 评论 (8)编辑

2008年1月15日

     摘要: 今天在博客园里看到一篇文章《在你的页面上添加Silverlight 应用 Step by Step 》,自己动手跟着一步步做,最后试验成功,小兴奋了一阵。但回过头来看一看,发现还是有点麻烦,以下介绍的就是一个比较快捷方便方法。如果没看过以上那篇文章的朋友,建议在看本篇文章之前先去看一看,因为该文章介绍过的东西我在这里就不再重复了。   阅读全文
posted @ 2008-01-15 23:45 小No 阅读(1614) | 评论 (5)编辑

2007年12月29日

    以前我们在更新应用程序,导至asp.net应用程序重启,应用程序的用户通常会显示不友好的错误信息,或者IE一直显示加载状态。

ASP.net 2.0
支持您在应用程序根目录下放置一个app_offline.htm文件,用户请求时,系统会检查是否有这个文件存在,如果有,系统会将app_offline.htm文件的内容直接返回给用户。
app_offline.htm
的内容可以更改成任何您需要的内容,但是要注意,文件不能太小,因为大部分用户的IE设置了显示友好的Http错误信息,如果app_offline.htm小于512字节,此设置将会失效,将会显示404错误。

    另外注意一下地址栏,offline信息显示时,地址栏依然显示的时请求的地址

posted @ 2007-12-29 11:48 小No 阅读(29) | 评论 (0)编辑

2007年12月28日

    平常在编写代码时,我们都知道用Shift + 方向键来选择一行或多行代码。
    但如果只要选择某几列代码呢?这可能就很多不多人不知道了。
    其实也很简单,只要同时按住Shift + Alt + 方向键或者单按Alt + 鼠标控制就可以做垂直选择了。
posted @ 2007-12-28 16:07 小No 阅读(34) | 评论 (0)编辑

2007年4月25日

使用VS 2005开发的朋友应该都知道,编译一个很多页面的网站工程是很费时间的,那有没有什么办法可以提高编译速度呢?
答案是肯定的,请按照以下的优化步骤来做,包你以后不会再为编译网站而感到痛苦。

优化步骤:
  1. 删掉bin目录下的所有.dll.refresh文件。注意:删掉之后,你通过文件路径引用的dll,VS 2005将不会帮你自动更新到bin目录里。也就是说如果你引用的dll更新了,你必须自己手动重新引用一次。

               

  2. 最好把/app_code 目录的.cs文件移到一个dll工程中。因为编译个dll工程会比编译网站工程里/app_code目录里.cs文件要快,而且移走/app_code里的.cs文件还会提高.aspx页面中设计试图和代码试图的切换速度。

  3. 打开网站工程的属性页,选择"Build” Tab页,把"Before running startup page"下拉框由"Build Web Site“改为"Build Page"或者"No Build"。最后再把"Build Web Site as part of solution"前的复选框去掉。


完成这三步就算大功告成了,看看是不是编译比以前快多了,特别是大的项目更明显。

关于具体的原理,请查看Scott 的Optimizing ASP.NET 2.0 Web Project Build Performance with VS 2005 这篇文章!!

posted @ 2007-04-25 16:29 小No 阅读(334) | 评论 (0)编辑

2006年12月17日

正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。


匹配中文字符的正则表达式: [\u4e00-\u9fa5]
评注:匹配中文还真是个头疼的事,有了这个表达式就好办了

匹配双字节字符(包括汉字在内):[^\x00-\xff]
评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)

匹配空白行的正则表达式:\n\s*\r
评注:可以用来删除空白行

匹配HTML标记的正则表达式:<(\S*?)[^>]*>.*?</\1>|<.*? />
评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力

匹配首尾空白字符的正则表达式:^\s*|\s*$
评注:可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式

匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
评注:表单验证时很实用

匹配网址URL的正则表达式:[a-zA-z]+://[^\s]*
评注:网上流传的版本功能很有限,上面这个基本可以满足需求

匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
评注:表单验证时很实用

匹配国内电话号码:\d{3}-\d{8}|\d{4}-\d{7}
评注:匹配形式如 0511-4405222 或 021-87888822

匹配腾讯QQ号:[1-9][0-9]{4,}
评注:腾讯QQ号从10000开始

匹配中国邮政编码:[1-9]\d{5}(?!\d)
评注:中国邮政编码为6位数字

匹配身份证:\d{15}|\d{18}
评注:中国的身份证为15位或18位

匹配ip地址:\d+\.\d+\.\d+\.\d+
评注:提取ip地址时有用

匹配特定数字:
^[1-9]\d*$    //匹配正整数
^-[1-9]\d*$   //匹配负整数
^-?[1-9]\d*$   //匹配整数
^[1-9]\d*|0$  //匹配非负整数(正整数 + 0)
^-[1-9]\d*|0$   //匹配非正整数(负整数 + 0)
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$   //匹配正浮点数
^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$  //匹配负浮点数
^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$  //匹配浮点数
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$   //匹配非负浮点数(正浮点数 + 0)
^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$  //匹配非正浮点数(负浮点数 + 0)
评注:处理大量数据时有用,具体应用时注意修正

匹配特定字符串:
^[A-Za-z]+$  //匹配由26个英文字母组成的字符串
^[A-Z]+$  //匹配由26个英文字母的大写组成的字符串
^[a-z]+$  //匹配由26个英文字母的小写组成的字符串
^[A-Za-z0-9]+$  //匹配由数字和26个英文字母组成的字符串
^\w+$  //匹配由数字、26个英文字母或者下划线组成的字符串
评注:最基本也是最常用的一些表达式

posted @ 2006-12-17 09:20 小No 阅读(86) | 评论 (0)编辑

导航

<2008年7月>
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789

统计

与我联系

常用链接

留言簿(1)

我参加的小组

我参与的团队

我的标签

随笔分类

随笔档案

文章分类

相册

Blogs

搜索

积分与排名

最新评论

阅读排行榜

评论排行榜