Apr20th
做了个网站,测试正常好就上传到服务器,看了一下,基本正常,但点到其中一个页面时发现了乱码,找到那个页面打开,仔细检查,没有发现与其他页面有什么不同,而且整站在webconfig里声明了UTF8编辑,页面的编辑也没有改过,按里不会出现乱码。因为我用到了母版页,母版页里的内容是正常的,只有其中一部分的内容是乱码,有点搞不懂了,试着用其他的编码查看,结果还是乱码。
回到本地打开源文件调试,一切正常,放到另一个网站的服务器上,也可以正常显示,然道传说中的鬼出现了?百思不得其解。
...
网站 网页 乱码 服务器
Apr17th
越来越喜欢用SQLITE了,免费,小巧,跨平台,高性能,对于一般应用已经足够了,不用去搭建数据库服务器平台,现在我做的小型方案一般都用SQLITE了。
今天开发一个产品的查询功能,其中有十多项可选的,每个产品都可以有其中的一项或几项,开始数据库设计也不是很合理,把每项都用一个字段表示,结果杯具了十多个字段,有的要and 有的要 or ,要把这些组合给搞出来,没有个三五百行代码(甚至更多)估计不行。
只能改数据库了,想到以前做权限的时候,可以用位运算来做,这个一个字段就可以搞定所有的事了,但那时用的是SQL SERVER,有bitand这个函数,实现容易,在SQLITE试了一下,没有这个函数,再去百度和GOOGLE,也没有发现相关内容。难道sqlite就不支持?不死心,用select 1 & 3 查询了一下,得出了结果,居然就这么简单,有点不信,再用select 1 | 3 还是正确的。
...
sqlite 按位与 按位或
Apr9th
外贸越做越没有劲了,本来打算回来去技术方面的工作,但都这个年纪了,来回的倒腾也不是办法,想了想还是做业务吧。外贸也接着做,顺便做下国内的业务。
刚好前研究邮件群发,也是巧,对我做业务有一定的帮助。但我手头的发件箱没有,只有自己常的几个邮箱。就想着做一个,要是按做发邮件方式的做法那太浪费时间了,加上还要输入验证码,于是就做了个半自动的,花了一个下午的时间,可注册126 163 Yeah sina chinaren sohu sogou yahoo 21cn这几个邮箱。
主要就是用Webbrowser对网页进行操作,再按规律生成一些数据。测试了一下,除了sohu和sogou两个的验证码不好输入外,其他速度也还行,一分钟可以注册两三个吧,如果网速快点应该可以到四个。
...
C# 邮箱 注册
Mar31th
string NumConvert(uint num,uint b)
{
if (b == 0) return "Err";
StringBuilder sb = new StringBuilder();
...
进制
Mar7th
在开HTTP方式提交数据时,有的要登录才能发送数据,如果每次都登录,那就有点浪费时间了,因为网络的问题,很多时间都花来回传输数据上,如果登录后把CookieContainer保存到文件或数据库那就会快很多了。
保存CookieContainer考虑到两种方法,一种是把CookieContainer序列化,再保存,用的时候再反序列化;另一种是遍历出所有的Cookie,再把内容读出来,用的时候再构建新有Cookie,再添加到CookieContainer。经过考虑,决定用第二种,因为Cookie会有时间限制,如果单单的序列化后保存,就有可能会过期,而后一种则可以自己设置时间。
...
C# CookieContainer cookie
Feb20th
这几天在做一个小东西,涉及到网站内容,要向不同的网站提交数据,并朋取得返值,做一些特殊的应用。开始是每个网站写一个类,直接在程序中运行。后来类不同的增加,同时考虑到,一旦某个网站规则必了,整个程序都要改了,而且程序发布以后要添加新的网站有点不方便。
考虑了一下,想到将每个类编译成DLL,放在指定的目录下,程序运行的时候加载并运行这些DLL,以后一旦某个不行了直接删除就行了,如果要添加其他的,直接将编译好的DLL放到此目录下就行了。同时修改起来也方便,只要修改指定的DLL就行了,并不影响其他DLL运行。
...
C# DLL
Jan25th
当今这个互联网时代,电子邮件成为人们日常联系中的一个重要角色,同时也衍生了另一个行业,邮件群发,致使垃圾邮件满天飞,因此各个邮件服务商也提供了相应的策略来防止垃圾邮件的产生。可是平时我们又必须用到邮件群发,如过节时候给客户发送一些祝福的内容,公司有新产品的时候,给一些新老客户发送产品信息等。
前两天群里有位朋友的公司要求他做个邮件群发工具,看了他的思路,比起以前利用SMTP,及直接内置浏览器然后模拟点击都要好。利用SMTP,现在除了GMAIL一天可以发几进封邮件外,其他邮箱发不了多少,网易在30封左右,而HOTMAIL则只有10封左右,远远达不到要求,而模拟网页点击的话,则效率相对较慢,要加载很多无用的信息,优点是比较稳定。而那位朋友则用对网页发邮件HTTP抓包后,直接POST邮件到指定的页面,这些就可以少加载很多东西了,相当于AJAX一样了。
...
邮件群发 网易 C# HttpWebRequest
Jan19th
前段用C#做了个配合采集器的数据处理工具,其中运用到了大量的字符串替换,因此要考虑到字符串替换的效率的问题。
我们在处理字符串替换的时候,一般会有到四种方式,第一种String真接替换,第二种是正则表达式替换,第三种是StringBuilder替换,第四种是调用VisualBasic的Replace函数。第一种是最常用也是最普遍的,第二种则是功能最强大的,第三种用的人不多,第四种使用C#的人使用得更少了。
以下是我写的一段测试代码,把一段文字里的“国”字替换成“国”字,等于没有替换,操作五百万次,再来对比结果。
...
C# Replace 正则表达式
Nov17th
分类表的SQL代码:
CREATE TABLE [dbo].[Class](
[ID] [int] IDENTITY(1,1) NOT NULL,
[ClassName] [varchar](20) NOT NULL,
[ParentID] [int] NOT NULL
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
...
SQL Server 无限分类