- 博客(68)
- 资源 (22)
- 收藏
- 关注
转载 c#动态编译,动态生成程序集
首先引入命名空间using System.CodeDom.Compiler; 其次我们要了解CSharpCodeProvider这个类是用于动态编译c#程序集,它继承了ICodeCompiler 在使用动态编译前,应该先了解反射的相关知识 在动态编译时,提供了多种方式如下:CompileAssemblyFromDom 使用指定的编译器设置从指定的 Code
2013-05-20 18:15:30
3053
1
原创 利用WM_GETTEXT消息获取谷歌浏览器地址栏内容。
所有要用到的API [DllImport("user32.dll")] public static extern IntPtr FindWindowEx(IntPtr hwndParent, IntPtr hwndChildAfter, string lpszClass, string lpszWindow); [DllImport("User
2013-05-03 12:47:25
4225
转载 C# 获取文本文件的编码,自动区分GB2312和UTF8
using System;using System.IO;using System.Text;/// /// FileEncoding 的摘要说明/// namespace FileEncoding{ /// /// 获取文件的编码格式 /// public class EncodingType {
2013-04-30 15:02:06
1330
转载 Aspose.Words操作word excel ppt说明
最近用到Aspose这个控件,是商业控件,有限制的版本用着还是不爽的..所以我找了个破解版的...下面是几句常用到的操作EXCEL和PPT的,目前还是刚会用,慢慢研究先...操作EXCEL的Workbook workbook = new Workbook();workbook.Open(path); //打开EXCELCells cells;cells = w
2013-04-30 08:31:15
2981
原创 利用位移运算符获取汉字的编码值
using System;using System.Text;namespace ConsoleApplication1{ class Program { static void Main(string[] args) { try { str
2013-04-29 14:33:08
1049
原创 C#版的LOWORD,HIWORD,LOWBYTE,HIGHBYTE解析方法
public static ushort LOWORD(uint value) { return (ushort)(value & 0xFFFF);}public static ushort HIWORD(uint value) { return (ushort)(value >> 16);}public static byte LOWBYTE(usho
2013-04-23 19:27:47
4567
转载 HOOK专题 ---- 来自微软中国社区
目录基本概念运行机制钩子类型作者基本概念钩子(Hook),是Windows消息处理机制的一个平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理window消息或特定事件。钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系
2013-04-20 13:32:42
872
原创 C#中的常用类库小结
string类属性Length //获得字符串中字符的个数。”aA我你他”→5 方法 IsNullOrEmpty() 静态方法,判断为null或者为””ToCharArray() 将string转换为char[]ToLower() 小写,必须接收返回值。(因为:字符串的不可变);ToUpper() 大写。Equals() 比较两个字符串是否相同。 忽略大小写的比较,
2013-04-18 22:50:22
764
原创 Excel表格合并
NPOIExcelVersion:20130415NPOIExcelDownLoadUri:http://pan.baidu.com/share/link?shareid=418232&uk=3962968090(UriEnd)
2013-04-14 21:52:28
764
原创 利用Npoi操作excel(支持excel2003,excel2007)
定义一个枚举区别excel版本: enum ExcelVersion { Excel2003, Excel2007 }用Npoi将Excel文档数据读取到DataTable中: class NpoiExcelOperate { private ExcelVersion _excelVersion;
2013-04-14 14:29:41
1484
原创 WPF TextBox只允许输入数字
添加KeyDown事件private void TextBox_KeyDown(object sender, KeyEventArgs e) { if (e.Key >= Key.D0 && e.Key = Key.NumPad0 && e.Key <= Key.NumPad9) { e.Handl
2013-04-14 12:56:49
2737
转载 c# 读取excel的一系列问题
c#读取excel的方法有不少,这里重点讲直接将excel文件读取到dataset中。在实践过程中会有不少问题,特意摘抄在此:1.基本的代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> private DataSet importE
2013-04-12 22:43:57
805
转载 C# winform中ListView用法
//更改属性 this.listView1.GridLines = true; //显示表格线 this.listView1.View = View.Details;//显示表格细节 this.listView1.LabelEdit = true; //是否可编辑,ListView只可编辑第一列。 th
2013-04-09 19:34:13
776
转载 WPF自定义一个MessageBox介绍
xaml:<Window x:Class="AgileToDo.UMessageBox" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Tit
2013-04-05 12:15:41
2516
转载 C#图片处理示例(裁剪,缩放,清晰度,水印)
转载自:http://www.cnblogs.com/wu-jian/ 前言需求源自项目中的一些应用,比如相册功能,通常用户上传相片后我们都会针对该相片再生成一张缩略图,用于其它页面上的列表显示。随便看一下,大部分网站基本都是将原图等比缩放来生成缩略图。但完美主义者会发现一些问题,比如显示排版时想让相片缩略图列表非常统一、整齐、和美观,比如要求每张缩略图大小固定为120 x
2013-03-29 21:28:00
1173
原创 c#走出误区。
昨天看《c# in Depth》,有部分是走出误区。觉得不错,故记之。1.不少人认为引用类型在堆上,值类型在栈上,前半部分是对的,但后半部分就有问题了。假设一个类中有一个int类型的实例变量,那么这个类的任何对象中,该变量的值总是和对象中的其他数据在一起,也就是在堆上。2.对象在c#中默认是通过引用传递的。其实这种说法是错误的,引用类型作为方法参数使用时,参数默认传递是以“值传递”
2013-03-29 15:54:32
597
原创 关于排序算法耗时问题。
写了一个类用于计时: class Time:IDisposable { private DateTime _time; public Time() { _time = DateTime.Now; } public void Dispose() {
2013-03-28 16:10:37
839
转载 字符串匹配算法
我想说一句“我日,我讨厌KMP!”。KMP虽然经典,但是理解起来极其复杂,好不容易理解好了,便起码来巨麻烦!老子就是今天图书馆在写了几个小时才勉强写了一个有bug的、效率不高的KMP,特别是计算next数组的部分。其实,比KMP算法速度快的算法大把大把,而且理解起来更简单,为何非要抓住KMP呢?笔试出现字符串模式匹配时直接上sunday算法,既简单又高效,何乐而不为?说实话,想
2013-03-27 21:23:17
679
转载 快速排序算法
文章引用:http://blog.youkuaiyun.com/morewindows/article/details/6684558 快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用,再加上快速排序思想----分治法也确实实用,因此很多软件公司的笔试面试,包括像腾讯,微软等知名IT公司都喜欢考这个,还有大大小的程序方面的考试如软考,考研中也常常出现快速排序的身影。
2013-03-27 19:32:22
534
转载 希尔排序(插入排序的改良)
转自:http://blog.youkuaiyun.com/morewindows/article/details/6668714希尔排序的实质就是分组插入排序,该方法又称缩小增量排序,因DL.Shell于1959年提出而得名。 该方法的基本思想是:先将整个待排元素序列分割成若干个子序列(由相隔某个“增量”的元素组成的)分别进行直接插入排序,然后依次缩减增量再进行排序,待整个序列中
2013-03-27 19:17:55
715
原创 我对插入排序算法的理解。
我的理解是从数组第二个元素开始依次和前面的元素比较,小于前面则交换位置,直到插入的位置正确为止。代码实现如下:using System;namespace 插入排序{ class Program { static void Main(string[] args) { int[] iarray = new in
2013-03-25 19:04:16
506
转载 C#指针- unsafe与fixed
c#在默认情况下生成的都是安全代码,即进行了代码托管(.NET的CLR机制好处之一是 ,进行代码托管,适时的释放内存,程序员便不必考虑资源 的回收问题),而此时,指针不能出现在安全代码的编译条件下。 一、unsafe 如果因需要想在c#中使用指针,那么unsafe便是一个通道(当然在使用前,需在项目属性的生成选项中,选择“允许不安全代码”)。example 1:a
2013-03-24 22:02:05
740
转载 WPF:警惕TextBox会占用过多内存
问题源自这篇文章:WPF的TextBox产生内存泄露的情况。整个问题是这样的,文章作者演示使用类似下方的代码来不停地像WPF的TextBox控件赋值:for (int i = 0; i < 10000; i++){ //tbx是界面上的TextBox变量 tbx.Text += string.Format("{0}\n", i);} 然后会出现程序
2013-03-24 13:57:42
1893
原创 C#父类与子类(多态性)
对多态性概念还是有点模糊,突然好奇动手写了一下代码,感觉明白了。using System;namespace 父类子类{ class Person { public Person() { Console.WriteLine("我是父类构造函数"); } public virtual
2013-03-23 22:18:24
1011
原创 C#重载运算符
本文转自MSDN:http://msdn.microsoft.com/zh-cn/library/8edha89shttp://msdn.microsoft.com/zh-cn/library/s53ehcz3使用 operator 关键字来重载内置运算符,或提供类或结构声明中的用户定义转换。若要在自定义类中重载运算符,您需要在该类中创建具有正确签名的方法。 该方法必须命名
2013-03-22 23:22:38
818
原创 Winform中绘图(椭圆,直线等)
Graphics g = this.CreateGraphics();用 CreateGraphics 方法创建 Graphics 对象画线,下例是一个棋盘://x+=15每一个格子的宽15,y+=15每一个格子的高15 for (int x = 10, y = 10, count = 0; count < 15; x += 15, y += 1
2013-03-22 20:35:18
1097
原创 WinForm中获取鼠标当前位置
Control.MousePosition 属性,获取鼠标光标的位置(以屏幕坐标表示) Control.PointToClient(Point p)方法,可将指定屏幕点的位置计算成工作区坐标 Control.PointToScreen(Point p)方法,可将指定工作区的位置计算成屏幕坐标
2013-03-22 20:31:27
1239
转载 .Net常见面试题整理(一)——值类型和引用类型
原文地址:http://www.cnblogs.com/zhangkai2237/archive/2013/03/17/2964528.html类型一直是C#中最基本的问题,关于值类型和引用类型,我想每个C#程序员都知道“值类型保存在栈上,引用类型保存在堆上”。但是仅仅知道到这里是完全不够的,我们需要理解C#中的类型,了解为什么要有值类型和引用类型以及他们的特征。一、值类型和引
2013-03-22 11:59:29
856
转载 .Net常见面试题整理(二)——装箱和拆箱
原文链接:http://www.cnblogs.com/zhangkai2237/archive/2013/03/21/2974570.html上一节我们讨论的是值类型和引用类型, 我们知道值类型是一种轻量级的数据结构, 对于一些简单的类型定义为值类型会减少定义成引用类型造成的系统开销以及GC的压力。但是值类型有一个缺点,就是缺少对象指针,我们不能用一个新的变量来引用栈上的值类型(No
2013-03-22 11:55:58
793
原创 c# 文件拖放进程序获取文件路径
WPF添加Drop事件 Drop="Window_Drop_1"Winform添加DragDrop事件 private void Window_Drop_1(object sender, DragEventArgs e) { if (e.Data.GetDataPresent(DataFormats.FileDrop))
2013-03-21 13:08:03
1024
原创 sealed,new,virtual,abstract与override
1.sealed---“断子绝孙”密封类不能被继承,不会有子类。密封方法可以重写基类中的方法。2.new---“你是你的,我是我的”new关键字用于显式隐藏从基类继承的成员,也就是说在使用派生类时调用的方法是new关键字新定义出来的方法,而不是基类的方法。在不使用new修饰符的情况下隐藏成员是允许的,但会生成警告。使用new显式隐藏成员会取消此警告,并使用派
2013-03-20 23:35:04
679
原创 private,protected,public和internal的区别
private是完全私有的,只有在类自己里面可以调用,在类外部和子类都不能调用,子类也不能继承父类的private属性和方法protected虽然可以被外界看到,但外界却不能调用,只有自己及自己的子类可以调用(属性和方法都可以被子类所继承和调用)private和protected的共同点:外部都不可以访问private和protected的区别:在同一类中可以视为一样,继承中可以体现区别priva
2013-03-20 23:23:16
738
原创 C# const和readonly的区别
初始化赋值不同const修饰的常量必须在声明的同时赋值,例如: public class Class1 { public const int MaxValue = 10;//正确声明 public const int maxValue; //错误,常量字段要求提供一个值 public Class1() {
2013-03-20 22:59:34
594
原创 C#Equals()和运算符==的区别
1.对于值类型如果对象的值相等,则相等运算符==返回True,否则返回False2.对于引用类型equals方法比较的是两个对象指向的内存空间内容是不是相同。也就是比较两个引用类型是否是对同一个对象的引用,即两个对象的内容是否相等。对于string类型,==比较字符串的值对于引用类型,==操作符类似于比较的是文件夹的路径是否相同,而equals方法比较的
2013-03-20 22:31:45
586
原创 c#字符串常见操作
1.字符串转为比特码:byte[] byteStr=System.Text.Encoding.Default.GetBytes(str);2.字符串相加StringBuilder sb=new StringBuilder();sb.Append("aa");sb.Append("bb");sb.Append("cc");//和+等效string str="aa"
2013-03-20 19:53:55
750
原创 c#区分传值调用 传引用调用。
先来看一下百度百科是怎样说的:传值调用是指方法在调用参数时,不是对原参数进行操作,而是创建参数的拷贝并对进行操作,这种调用有利于保护数据传引用调用是指传递一个地址的拷贝。在c#中(以下内容转自:http://www.cnblogs.com/wang_yb/archive/2011/05/18/2050574.html):如果传递的参数是基元类型(int,float等
2013-03-20 17:57:02
656
原创 c#好的程序员必须掌握的编码习惯
1.一定要用大括号括住流程控制元素,如for,while,if,switch内嵌的代码,即便只包含一行代码。2.如果语句中有else if,一定要有一个else跟着最后一个else if。3.只要使用switch在所有case后面一定要有default。4.当对字符串进行复杂操作的时候考虑用StringBuilder,StringBuilder可以在实例化的时候制定字符串需要多少空间,
2013-03-17 15:21:01
708
转载 C#.Net DataSet和DataTable详解
C#遍历DataSet中数据的几种方法总结//多表多行多列的情况foreach (DataTable dt in YourDataset.Tables) //遍历所有的datatable { foreach (DataRow dr in dt.Rows) ///遍历所有的行 foreach
2013-03-16 13:57:32
1040
转载 c#序列化及反序列化(三种方式)
一:BinaryFormatter序列化序列化简单点来理解就是把内存的东西写到硬盘中,当然也可以写到内存中(这个内容我会在后面写一个例子).而反序列化就是从硬盘中把信息读到内存中.就这么简单,呵呵,现在来看下面的例子吧!在这篇文章中我将使用BinaryFormatter序列化类Book作为例子,希望大家能从例子中深刻体会什么是序列化.定义类Book:[Seriali
2013-03-15 20:48:42
993
原创 WPF 创建右键菜单
主要用到ContextMenu类,对于任何的控件都可以进行对ContextMenu属性的操作进行设置右键菜单的功能.xaml代码如下:<Window x:Class="右键菜单.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http
2013-03-11 22:35:11
1461
HOTP和TOTP动态密码JAVA示例源码.zip
2021-04-13
ServiceStack.Ormlite 4.0 完全破解
2017-09-29
手机远程控制桌面
2015-08-23
C# Metro(Win8风格)按钮实现源码
2013-06-04
Aspose.Words for .Net 6.5
2013-04-30
c语言音乐播放器(源码)
2013-02-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人