摘要: 1、使用FileStream读写文件文件头:using System;using System.Collections.Generic;using System.Text;using System.IO;读文件核心代码:byte[] byData = new byte[100];char[] charData = new char[1000];try{FileStream sFile = new FileStream("文件路径",FileMode.Open);sFile.Seek(55, SeekOrigin.Begin);sFile.Read(byData, 0, 10 阅读全文
posted @ 2014-02-27 17:57 zzg168 阅读(138) 评论(0) 推荐(0)
摘要: using System;usingSystem.Collections; usingSystem.ComponentModel; usingSystem.Data; usingSystem.Drawing; usingSystem.Web; usingSystem.Web.SessionState; usingSystem.Web.UI; usingSystem.Web.UI.WebControls; usingSystem.Web.UI.HtmlControls; namespaceWebApplication1.验证码 { /// ///完美随机验证码0.10 ///Verion:0.1 阅读全文
posted @ 2014-02-27 17:56 zzg168 阅读(262) 评论(0) 推荐(0)
摘要: 注意:转换为ICO后效果不好.源代码:using System;using System.Collections.Generic;using System.Text;using System.Drawing;using System.Drawing.Imaging;using System.IO;namespace paomiangege{ public class ImageConvert { private int ICON_W = 64; private int ICON_H = 64; public ImageConvert() { } //fileinpath,origaly pic 阅读全文
posted @ 2014-02-27 17:53 zzg168 阅读(954) 评论(0) 推荐(0)
摘要: 集合>哈希表类HashtableHashtable一种键值对的集合 ,哈希表内部的排列是无序的,而且哈希表没有提供排序方法。集合>哈希表类Hashtable>构造普通哈希表代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->usingSystem;usingSystem.Collections.Generic;usingSystem.Text;usingSystem.Collections;namespaceConsoleA 阅读全文
posted @ 2014-02-27 17:51 zzg168 阅读(152) 评论(0) 推荐(0)
摘要: 1.dynamic ExpandoObject熟悉js的朋友都知道js可以这么写 :1var t = new Object(); 2t.Abc = ‘something’; 3t.Value = 243;现在这个js动态语言的特性,我们也可以在c#中使用了,前提是将一个变量声明为ExpandoObject类型。如下例:1static void Main(string[] args) 23dynamic t = new ExpandoObject(); 4t.Abc = "abc"5t.Value = 10000; 6Console.WriteLine("t' 阅读全文
posted @ 2014-02-27 17:50 zzg168 阅读(123) 评论(0) 推荐(0)
摘要: C#格式化数值结果表字符说明示例输出C货币string.Format("{0:C3}", 2)$2.000D十进制string.Format("{0:D3}", 2)002E科学计数法1.20E+0011.20E+001G常规string.Format("{0:G}", 2)2N用分号隔开的数字string.Format("{0:N}", 250000)250,000.00X十六进制string.Format("{0:X000}", 12)Cstring.Format("{0:000. 阅读全文
posted @ 2014-02-27 17:47 zzg168 阅读(164) 评论(0) 推荐(0)
摘要: ===================================================注:很久没有发文了,贴一篇新文吧。从Word直接贴过来的,没仔细排版,诸位海涵。有关DLR和C# 4动态特性的详细介绍,请参看本人拙著《.NET 4.0面向对象编程揭秘(应用篇)》,目前该书正处于编辑出版流程中,估计12月上市。与此书相关的技术资源,将陆续发布于博客园与CSDN的本人博客。=====================================================================================金旭亮 近几年来,在TIOBE公司每个 阅读全文
posted @ 2014-02-27 17:45 zzg168 阅读(216) 评论(0) 推荐(0)
摘要: C#引入了readonly修饰符来表示只读域,const来表示不变常量。顾名思义对只读域不能进行写操作,不变常量不能被修改,这两者到底有什么区别呢?只读域只能在初始化--声明初始化或构造器初始化--的过程中赋值,其他地方不能进行对只读域的赋值操作,否则编译器会报错。只读域可以是实例域也可以是静态域。只读域的类型可以是C#语言的任何类型。但const修饰的常量必须在声明的同时赋值,而且要求编译器能够在编译时期计算出这个确定的值。const修饰的常量为静态变量,不能够为对象所获取。const修饰的值的类型也有限制,它只能为下列类型之一(或能够转换为下列类型的):sbyte, byte, short 阅读全文
posted @ 2014-02-27 17:43 zzg168 阅读(145) 评论(0) 推荐(0)
摘要: The FindControl method of the System.Web.UI.Control class appears simple enough to use. In fact, the MSDN description of the method is one simple sentence: Searches the current naming container for the specified server control.The key to using FindControl is to invoke the method on the correct conta 阅读全文
posted @ 2014-02-27 17:42 zzg168 阅读(277) 评论(0) 推荐(0)
摘要: 原题如下:12(a桶 满的 有12斤油)斤桶里 取出6斤油 有 另外有8斤(b桶)和5斤(c桶)两个空桶 让程序输出取出这6斤油的步骤现在实现的算法可以配参数(定义有几个桶,初始有多少油,要得到多少油,都可以配),并且找出任意(多条线路或者找不到)满足条件的倒油线路图:运行效果:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->using System;using System.Collections.Generic;using System. 阅读全文
posted @ 2014-02-27 17:41 zzg168 阅读(188) 评论(0) 推荐(0)
摘要: 一.使用OleDb,这个法子好像不大好使.容易读错.引用System.Data.OleDb;/**///////返回Excel数据源//////文件路径///staticpublicDataSetExcelToDataSet(stringfilename){DataSetds;stringstrCon="Provider=Microsoft.Jet.OLEDB.4.0;"+"ExtendedProperties=Excel8.0;"+"datasource="+filename;OleDbConnectionmyConn=newOle 阅读全文
posted @ 2014-02-27 17:40 zzg168 阅读(501) 评论(0) 推荐(0)
摘要: 1///2///提取字符串中的数字字符串3///4///5///6publicstaticstringIsNumber(Stringstr)7{8stringreturnStr=string.Empty;9for(inti=0;i<str.Length;i++)10{11if(Char.IsNumber(str,i)==true)12{13returnStr+=str.Substring(i,1);14}15else16{17if(str.Substring(i,1)=="A"||str.Substring(i,1)=="")18{19return 阅读全文
posted @ 2014-02-27 17:37 zzg168 阅读(274) 评论(0) 推荐(0)
摘要: MFC 生成本机代码,自然是很快。可是,消息循环,减缓了界面显示速度。winform 封装了 win32 的api,多次进行P/invoke 操作 (大部分使用p/invoke操作封装),速度慢 。wpf是一种新的模型,不再使用win32 模型,自己新建模型,使用dx 作为新的显示技术,直接访问驱动程序,加快了运行速度,可是,这种模型,需要支持dx 9 的显卡,硬件要求高(你还能找到现代机器不支持dx9 的吗?)开发效率上,MFC<WPF<winform 尽管MFC开发界面执行效率高但是开发效率低,作为现在的项目开发来说时间跟开发效率往往能决定项目的成败,所以除非有特别的需求,否则 阅读全文
posted @ 2014-02-27 17:36 zzg168 阅读(723) 评论(0) 推荐(0)
摘要: 这一段公司有个项目,客户要求上传的图片要带上自定义的水印。以前也经常和朋友讨论C#图片水印方面的问题,但是从来没有实际操作过。所以,借这次项目的机会也研究了一下C#图片水印的功能!本人参考的是discuz论坛中的代码。这种方法是直接把要上传的图片先转化成System.Drawing.Image,而不用保存到服务器端的磁盘上,然后加上水印重新绘制,再保存到服务器端的磁盘上,下面就拿出来晒晒:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> 1/ 阅读全文
posted @ 2014-02-27 17:35 zzg168 阅读(199) 评论(0) 推荐(0)
摘要: 在做WinForm界面布局时,菜单和工具栏必不可少!但是MenuStrip和ToolStrip不能够对边框的样式直接设置,如果想实现菜单和工具栏之间的分割线就不容易实现;今天查阅了一下msdn找到了一个方法,和大家一块分享,如果有更好的办法的话可以贴出来,共同进步; 首先,创建一个CustomProfessionalRenderer类(类名可随便定义)继承自ToolStripProfessionalRenderer。代码如下:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighli 阅读全文
posted @ 2014-02-27 17:34 zzg168 阅读(491) 评论(0) 推荐(0)
摘要: using System;using System.Data;using System.Configuration;using System.Linq;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.HtmlControls;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Xml.Linq;using System.Drawing;namespace Ne 阅读全文
posted @ 2014-02-27 17:32 zzg168 阅读(610) 评论(0) 推荐(0)
摘要: C#中new和override是继承中经常用到的两个关键字,但是往往有时候容易把这两个关键字的作用搞混淆。newC# new关键字表示隐藏,是指加上new关键字的属性或函数将对本类和继承类隐藏基类的同名属性或函数Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->publicclassA{publicvirtualvoidMethod(){Console.WriteLine("ThisMethodinClassA!");}}p 阅读全文
posted @ 2014-02-27 17:31 zzg168 阅读(156) 评论(0) 推荐(0)
摘要: 对属性或索引器使用访问修饰符受以下条件的制约:· 不能对接口或显式接口成员实现使用访问器修饰符。· 仅当属性或索引器同时具有 set 和 get 访问器时,才能使用访问器修饰符。这种情况下,只允许对其中一个访问器使用修饰符。· 如果属性或索引器具有 override 修饰符,则访问器修饰符必须与重写的访问器的访问器(如果有的话)匹配。· 访问器的可访问性级别必须比属性或索引器本身的可访问性级别具有更严格的限制。· public class Parent· {· public virtual int TestProperty& 阅读全文
posted @ 2014-02-27 17:30 zzg168 阅读(174) 评论(0) 推荐(0)
摘要: 请先下载http://asprise.com/product/ocr/index.php?lang=csharp 的SDK.里面提供了详细的OCR方法,如下:将发现图像框picbVeryfyCode里的文字和文本框.txtVeryfyCode.Text是一致的.数字识别率我碰到的几乎是100%http://blog.csdn.net/crabo/[DllImport("AspriseOCR.dll")]static extern string craboOCR(string file, int type);private void GetVeryfyCode(){ if(F 阅读全文
posted @ 2014-02-27 17:29 zzg168 阅读(669) 评论(0) 推荐(0)
摘要: 将oledb读取的excel数据快速插入的sqlserver中,很多人通过循环来拼接sql,这样做不但容易出错而且效率低下,最好的办法是使用bcp,也就是System.Data.SqlClient.SqlBulkCopy 类来实现。不但速度快,而且代码简单,下面测试代码导入一个6万多条数据的sheet,包括读取(全部读取比较慢)在我的开发环境中只需要10秒左右,而真正的导入过程只需要4.5秒。using System;using System.Data;using System.Windows.Forms;using System.Data.OleDb;namespace WindowsApp 阅读全文
posted @ 2014-02-27 17:28 zzg168 阅读(178) 评论(0) 推荐(0)
摘要: 1 btn Button 2 chk CheckBox 3 ckl CheckedListBox 4 cmb ComboBox 5 dtp DateTimePicker 6 lbl Label 7 llb LinkLabel 8 lst ListBox 9 lvw ListView 10 mtx MaskedTextBox 11 cdr MonthCalendar 12 icn NotifyIcon 13 nud NumeircUpDown 14 pic PictureBox 15 prg ProgressBar 16 rdo RadioButton 17 rtx RichTextBox 18 阅读全文
posted @ 2014-02-27 17:27 zzg168 阅读(182) 评论(0) 推荐(0)
摘要: 在c#3.0之前,想要为内置的类型添加一个方法显然是不可能的。但是,c#3.0提供的扩展方法可以解决这个问题。具体代码如下:public static class ExtendedClass {public static string ToKevin(this string str) {return "hello,kevin"; } }public class Program {static void Main(string[] args) { DateTime dt = DateTime.Now;string ... 阅读全文
posted @ 2014-02-27 17:26 zzg168 阅读(113) 评论(0) 推荐(0)
摘要: 本节说明对象的创建、初始化和销毁过程。本节介绍下列主题: l 类构造函数l 结构构造函数l 析构函数类构造函数本节将讨论三种类构造函数:类构造函数的类型注释实例用于创建并初始化类的实例。私有在类之外不可访问的特殊类型实例构造函数。无法用私有构造函数来实例化类。静态在创建第一个实例或引用任何静态成员之前,将自动调用这种构造函数来初始化类。无法直接调用这种构造函数。备注 (1) 实例构造函数 创建新对象时将调用类构造函数,例如: Point myPoint = new Point(); 一个类可以有多个构造函数。例如,可以声明一个不带参数的构造函数(如 Point())和一个带参数的构造函数(如 阅读全文
posted @ 2014-02-27 17:24 zzg168 阅读(238) 评论(0) 推荐(0)
摘要: C#中提供的与注册表相关的最主要的是两个类:Registry 和 RegistryKey,这两个类属于Microsoft.Win32命名空间Registry类包含5个公共的静态域,分别代表5个基本主键分别是:Registry.ClassesRootRegistry.CurrentUserRegistry.LocalMachineRegistry.UsersRegistry.Current Config这5个类分别对应注册表的第二级目录的五个预定义主键RegistryKey类中提供了对注册表操作的方法CreateSubKey //建立一个子键OpenSubKey //打开一个子键DeleteKe 阅读全文
posted @ 2014-02-27 17:22 zzg168 阅读(169) 评论(0) 推荐(0)
摘要: 结构是一种值类型,通常用来封装一组相关的变量,结构中可以包含构造函数、常量、字段、方法、属性、运算符、事件和嵌套类型等,但是如果同时包含上述几个类型则应该考虑使用类。结构的特点:·结构式值类型·向方法传递结构时,结构是通过传值方式传递的,而不是作为引用传递的。·结构的实例化可以不适用new运算符·结构可以声明构造函数,但他们必须带参数·一个结构不能从另一个结构或类继承·结构可以实现接口·在结构中初始化实例字段是错误的。聊了些特点,下面举个小例子大家参考下:using System;using System.Collectio 阅读全文
posted @ 2014-02-27 17:19 zzg168 阅读(135) 评论(0) 推荐(0)
摘要: Csharp4.0与以往版本基础体现了强大的性能优势,主要体现在以下四个方面:1. 通过委托成员来实现接口在C# 4.0中可以通过委托来实现某个成员的接口,例如下面的代码:public class Foo : IList { private List _Collection implements IList; public Foo() { _Collection = new List(); } }被封闭的成员可以用委托实现一个或多个接口,多个接口用逗号分隔。这么做可以去掉很多冗余的代码,就像上面的示例,不再需要在封闭类(Foo类)上写一大堆方法来将接口实现交给成员变量,接口的实现... 阅读全文
posted @ 2014-02-27 09:35 zzg168 阅读(147) 评论(0) 推荐(0)
摘要: 互斥进程(程序),简单点说,就是在系统中只能有该程序的一个实例运行.现在很多软件都有这功能,如Maxthon可以设置为"只允许打开一个窗体",还有Bitcomet等.我也是看到这些软件的这个功能才来研究这个问题的.要实现程序的互斥,通常有三中方式,下面用C#语言来实现:实现方式一:使用线程互斥变量.通过定义互斥变量来判断是否已运行实例.C#实现如下:把program.cs文件里的Main()函数改为如下代码:staticvoidMain(){boolrunone;System.Threading.Mutexrun=newSystem.Threading.Mutex(true 阅读全文
posted @ 2014-02-27 09:33 zzg168 阅读(233) 评论(0) 推荐(0)
摘要: 方案(一)脚本:调用示例: 用户名: 密码: --------------------------------------------------------------------------------------------------------------------------------------------方案(二)[ 方法一]前台代码:后台代码:using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System... 阅读全文
posted @ 2014-02-27 09:32 zzg168 阅读(239) 评论(0) 推荐(0)
摘要: using System.Runtime.InteropServices;引入键盘事件函数[DllImport("user32.dll")]public static extern void keybd_event(byte bVk, byte bScan, int dwFlags, int dwExtraInfo); 参数: bVk:定义一个虚拟键码。键码值必须在1~254之间。 bScan:定义该键的硬件扫描码。 dwFlags:定义函数操作的名个方面的一个标志位集。应用程序可使用如下一些预定义常数的组合设置标志位。 KEYEVENTF_EXETENDEDKEY:若指定 阅读全文
posted @ 2014-02-27 09:31 zzg168 阅读(2089) 评论(0) 推荐(0)
摘要: 1.对DBNull的解释: 该类用于指示不存在某个已知值(通常在数据库应用程序中)。 在数据库应用程序中,空对象是字段的有效值。该类区分空值(空对象)和未初始化值(DBNull.Value 实例)。例如,表可以包含具有未初始化字段的记录。默认情况下,这些未初始化字段具有 DBNull 值。 该类还可以用于在 COM Interop 中区分 VT_NULL 变量(与空对象关联)和 VT_EMPTY 变量(与 DBNull.Value 实例关联)。 DBNull 从不等于任何值。 DBNull 是一个单独的类,这意味着该类只能存在一个实例。这个唯一的实例是 DBNull.Valu... 阅读全文
posted @ 2014-02-27 09:29 zzg168 阅读(177) 评论(0) 推荐(0)
摘要: 格式化日期和数字的字符串经常要用到这个, 就把帮助里面的东西大概整理了一些列在这里了.下表描述了用来格式化 DateTime 对象的标准格式说明符。格式说明符 名称 说明 d 短日期模式 显示由与当前线程关联的 DateTimeFormatInfo.ShortDatePattern 属性定义的模式或者由指定格式提供程序定义的模式。 D 长日期模式 显示由与当前线程关联的 DateTimeFormatInfo.LongDatePattern 属性定义的模式或者由指定格式提供程序定义的模式。 t 短时间模式 显示由与当前线程关联的 DateTimeFormatInfo.ShortTimePatte 阅读全文
posted @ 2014-02-27 09:28 zzg168 阅读(131) 评论(0) 推荐(0)
摘要: usingSystem.Drawing;publicpartialclassPub_validcode:System.Web.UI.Page{protectedvoidPage_Load(objectsender,EventArgse){this.CreateCheckCodeImage(GenerateCheckCode());}//生成随机数privatestringGenerateCheckCode(){intnumber;charcode;stringcheckCode=String.Empty;System.Randomrandom=newRandom();for(inti=0;if 阅读全文
posted @ 2014-02-27 09:26 zzg168 阅读(222) 评论(0) 推荐(0)
摘要: 方案一:通过OleDB方式获取Excel文件的数据,然后通过DataSet中转到SQLServer,这种方法的优点是非常的灵活,可以对Excel表中的各个单元格进行用户所需的操作。openFileDialog=newOpenFileDialog(); openFileDialog.Filter="Excelfiles(*.xls)|*.xls"; if(openFileDialog.ShowDialog()==DialogResult.OK) { FileInfofileInfo=newFileInfo(openFileDialog.FileName); stringfil 阅读全文
posted @ 2014-02-27 09:23 zzg168 阅读(312) 评论(0) 推荐(0)
摘要: 近期在使用C#操作excel,主要是读取excel模板,复制其中的模板sheet页,生成多个sheet页填充相应数据后另存到excel文件,所用到的知识点如下。一、添加引用和命名空间添加Microsoft.Office.Interop.Excel引用,它的默认路径是C:\Program Files\Microsoft Visual Studio 9.0\Visual Studio Tools for Office\PIA\Office12\Microsoft.Office.Interop.Excel.dll代码中添加引用using Microsoft.Office.Interop.Excel; 阅读全文
posted @ 2014-02-27 09:22 zzg168 阅读(133) 评论(0) 推荐(0)
摘要: 1.获取Return返回值程序代码//存储过程//Create PROCEDURE MYSQL// @a int,// @b int//AS// return @a + @b//GOSqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["LocalSqlServer"].ToString());conn.Open();SqlCommand MyCommand = new SqlCommand("MYSQL", conn);MyCommand.Comman 阅读全文
posted @ 2014-02-27 09:19 zzg168 阅读(193) 评论(0) 推荐(0)
摘要: 首先访问一个类的私有成员不是什么好做法。大家都知道私有成员在外部是不能被访问的。一个类中会存在很多私有成员:如私有字段、私有属性、私有方法。对于私有成员造访,可以套用下面这种非常好的方式去解决。private string name;public string Name{ get return name; } set { name = value; }} 但是有时候,源代码是别人的,只提供给你dll。或者你去维护别人的代码,源代码却有丢失。这样的情况或许你想知道私有成员的值,甚至去想直接调用类里面的私有方法。那怎么办呢?在.net中访问私有成... 阅读全文
posted @ 2014-02-27 09:17 zzg168 阅读(165) 评论(0) 推荐(0)
摘要: public class IpHelper { // 核心方法:IP搜索 /// /// 查找IP所属地区,确保web.config存在IPData或者BackIpData配置节 /// /// IP /// public static IpLocation GetIpLocation(string ips) { string fn =HttpContext.Current.Server.MapPath(ConfigurationManager.AppSettings["IPData"]); string backData = HttpContext.Current.Ser 阅读全文
posted @ 2014-02-27 09:16 zzg168 阅读(233) 评论(0) 推荐(0)
摘要: //////获取指定月份指定周数的开始日期//////年份///月份///周数///privateDateTimeGetStartDayOfWeeks(intyear,intmonth,intindex){if(year9999){MessageBox.Show("年份超限");returnDateTime.MinValue;}if(month12){MessageBox.Show("月份错误");returnDateTime.MinValue;}if(index0)dayOfWeek=Convert.ToInt32(startMonth.DayOfWe 阅读全文
posted @ 2014-02-27 09:15 zzg168 阅读(224) 评论(0) 推荐(0)
摘要: C#在关闭窗体的时候,有时线程还在后台执行,没有及时退出。处理方案: 为Form添加FormClosing事件,加入以下语句,在退出时,杀死本进程。Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->System.Diagnostics.Process.GetCurrentProcess().Kill(); 阅读全文
posted @ 2014-02-27 09:13 zzg168 阅读(180) 评论(0) 推荐(0)
摘要: 在发射一个函数时,如果这个函数包含了对当前窗体的 Form.Close(),那么很可能在 Application.Run 处报错。引发这个原因,我在反汇编跟踪时,最终发现了问题点。原函数如下:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->privatevoidnavBarControl1_DoubleClick(objectsender,EventArgse){if(navBarControl1.PressedLink!=null){s 阅读全文
posted @ 2014-02-27 09:09 zzg168 阅读(329) 评论(0) 推荐(0)
摘要: http://msdn.microsoft.com/zh-cn/library/w5zay9db.aspxparams 关键字可以指定采用数目可变的参数的方法参数。可以发送参数声明中所指定类型的逗号分隔的参数列表或指定类型的参数数组。还可以不发送参数。在方法声明中的 params 关键字之后不允许任何其他参数,并且在方法声明中只允许一个 params 关键字。public class MyClass{ public static void UseParams(params int[] list) { for (int i = 0; i < list.Length; i... 阅读全文
posted @ 2014-02-27 09:08 zzg168 阅读(174) 评论(0) 推荐(0)
摘要: 因公司需要完成一条形码打印问题,所以在找到一些资料做了一个Demo特请教!不知道此条形码是否正确:图:源码:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->usingSystem;usingSystem.Collections.Generic;usingSystem.Text;usingSystem.Drawing;namespacePaabo.WordProcessing.Common{publicclassBarCodeProvide 阅读全文
posted @ 2014-02-27 09:07 zzg168 阅读(151) 评论(0) 推荐(0)
摘要: 用于参数的Attribute在编写多层应用程序的时候,你是否为每次要写大量类似的数据访问代码而感到枯燥无味?比如我们需要编写调用存储过程的代码,或者编写T_SQL代码,这些代码往往需要传递各种参数,有的参数个数比较多,一不小心还容易写错。有没有一种一劳永逸的方法?当然,你可以使用MS的Data Access Application Block,也可以使用自己编写的Block。这里向你提供一种另类方法,那就是使用Attribute。下面的代码是一个调用AddCustomer存储过程的常规方法:public int AddCustomer(SqlConnection connection, s.. 阅读全文
posted @ 2014-02-27 09:06 zzg168 阅读(137) 评论(0) 推荐(0)
摘要: .Net封装好的方法int Control.MousePosition.X;int Control.MousePosition.Y;用API方法using System.Runtime.InteropServices;Point p;[DllImport("user32.dll")]public static extern bool GetCursorPos(out Point pt);private void timer1_Tick(object sender, EventArgs e){ GetCursorPos(out p); label1.Text p.X.ToSt 阅读全文
posted @ 2014-02-27 09:03 zzg168 阅读(1157) 评论(0) 推荐(0)
摘要: 这是之前我写的原始的 VB.NET 版本:http://www.cnblogs.com/RChen/archive/2010/05/17/1737587.html转化为 C# 版本后,还进行了一些重构。包括修改成了强类型,以及使用了 Parallel.ForEach,但是发现没有收到预期的效果。性能提升比较少。研究后发现,其实问题的关键在于要通过某种方式对遍历的可能性进行剪枝,这样才能减少遍历次数,从而提升性能。而且,由于结果是通过 yield return 和 IEnumerable 实现的,并没有实现 IList 或者 Array. 所以它本质上并不支持按索引范围拆分的 Parallel. 阅读全文
posted @ 2014-02-27 09:02 zzg168 阅读(169) 评论(0) 推荐(0)
摘要: 当控制台命令使用process.Start(); 后可以直接显示输出内容,当然它是异步显示的不用等程序结束。代码如下:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Tex 阅读全文
posted @ 2014-02-27 09:00 zzg168 阅读(455) 评论(0) 推荐(0)
摘要: private void button2_Click(object sender, EventArgs e) {//去掉字符串头尾指定字符 string MyInfo= "--中华人民共和国--"; //显示 "中华人民共和国" MessageBox.Show(MyInfo.Trim(new char[1] { '-' }), "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information); MyInfo = ",-中华人民共和国-,-"; //显 阅读全文
posted @ 2014-02-27 08:59 zzg168 阅读(337) 评论(0) 推荐(0)
摘要: C#中国身份证验证,包括省份验证和校验码验证,符合GB11643-1999标准...今天写的C#中国身份证验证,包括省份验证和校验码验证,符合GB11643-1999标准...理论部分:15位身份证号码=6位地区代码+6位生日+3位编号18位身份证号码=6位地区代码+8位生日+3位编号+1位检验码 各省市地区国家代码前两位代码是: 北京 11 吉林 22 福建 35 广东 44 云南 53 天津 12 黑龙江 23 江西 36 广西 45 西藏 54 河北 13 上海 31 山东 37 海南 46 陕西 61 山西 ... 阅读全文
posted @ 2014-02-27 08:57 zzg168 阅读(230) 评论(0) 推荐(0)
摘要: /// /// 本类实现阿拉伯数字到大写中文的转换 /// 该类没有对非法数字进行判别,请事先自己判断数字是否合法 /// public class ChineseNum { //小写转大写 public static string GetChineseNum(string p_num) { ChineseNum cn = new ChineseNum(); return cn.NumToChn(p_num); } //小写金额转大写金额 public static string GetUpperMoney(double p_Money) { ChineseNum cn = new... 阅读全文
posted @ 2014-02-27 08:55 zzg168 阅读(502) 评论(0) 推荐(0)