C#
lemonay
这个作者很懒,什么都没留下…
展开
-
递归与尾递归总结
http://www.cnblogs.com/Anker/archive/2013/03/04/2943498.html前言:今天上网看帖子的时候,看到关于尾递归的应用(http://bbs.csdn.net/topics/390215312),大脑中感觉这个词好像在哪里见过,但是又想不起来具体是怎么回事。如是乎,在网上搜了一下,顿时豁然开朗,知道尾递归是怎么回事了。下面就递归与尾递归转载 2013-03-06 08:42:53 · 802 阅读 · 0 评论 -
网页信息抓取,分析方法记录
一切为了做个好爸爸。其实爸爸这个词,真的很汗颜,在我们还没有学会如何孝敬父母的时候,却已经马上要为人父母了。惊喜总是来的很快,不自觉中,自己已经成长了。虽然不一定是个称职的爸爸,但是我想大家在这个时候也是想做的更好。应老婆大人的要求,给俺家小宝宝先下载点胎教的音乐,奈何网上整理好的资源虽然丰富,但是没有成套的地址下载。发现几个挺不错的都是在线的儿童音乐网站。http://music.baby6原创 2013-04-29 05:07:49 · 2339 阅读 · 2 评论 -
C# 给多线程传参的三种方式
http://www.189works.com/article-42758-1.html从《C#高级编程》了解到给线程传递参数有两种方式,一种方式是使用带ParameterizedThreadStart委托参数的Thread构造函数,另一种方式是创建一个自定义类,把线程的方法定义为实例的方法,这样就可以初始化实例的数据,之后启动线程。方式一:使用ParameterizedThr转载 2013-05-05 15:59:43 · 1202 阅读 · 0 评论 -
C# 获取枚举 Enum 变量值的 Description 属性
有些时候,某个方法的返回值是个枚举类型,比如描述登录结果:public enum LoginResult{ Success, WrongPassword, UserNotExist, Forbidden, Unknown}当前段UI获取到登陆方法的返回结果时,就需要告诉用户登录是否成功、什么原因失败的。如果直接使用 ToString() 方式直转载 2013-05-08 08:53:15 · 1812 阅读 · 0 评论 -
桌面快捷图标 搜索工具
一直以来,由于使用到的工具越来越多,各种快捷方式的管理也非常的让人厌倦。网上也有很多的很炫的管理工具,但是对于一个不想老是动鼠标的人来说,键盘热键结合快捷的搜索和调用,才是最好的选择,思路简单如下:1.小工具开机启动2. 快捷键可以方便调出小工具,直接进入搜索栏,小工具中默认加载桌面以及桌面文件夹中2层深度的常用文件(doc,pdf,等等,不包括源代码文件)和工具的快捷图标。3.小原创 2013-05-13 00:11:54 · 1444 阅读 · 2 评论 -
XmlSerializer 对象的Xml序列化和反序列化
http://www.cnblogs.com/yukaizhao/archive/2011/07/22/xml-serialization.html这篇随笔对应的.Net命名空间是System.Xml.Serialization;文中的示例代码需要引用这个命名空间。为什么要做序列化和反序列化?.Net程序执行时,对象都驻留在内存中;内存中的对象如果需要传递给其他系统使用;或者在转载 2013-06-04 09:05:19 · 956 阅读 · 0 评论 -
解决!Visual Studio 遇到了异常。这可能是由某个扩展导致的。
转自:http://hi.baidu.com/ghymark/blog/item/65b8643ebc3c08ff15cecbac.html 最新在偶的老笔记本上装了个VS2010,界面还是一如既往地炫,但是新问题就来了,这个版本的VS没有本地的MSDN,只有联机的帮助,这对于处在网速仍处在青铜时代的我来说,这绝对是个致命bug。既然VS2010没有本地的MSDN,那我就退而求其次,安装了转载 2013-06-20 21:43:17 · 2206 阅读 · 0 评论 -
FTP 超时检测 ,C# 函数运行时超时功能改进
最近频繁操作FTP,但是也频繁遇到一个问题,那就是检测的超时问题,虽然有设定超时时间,但是由于其他原因,会造成这个超时时间根本无法随心定义,主要原因如MSDN描述如下:Timeout 是进行后续同步请求时使用 GetResponse 方法等待响应以及 GetRequestStream 方法等待流所允许的毫秒数。 Timeout 适用于整个请求和响应,不单独对 GetRequestStream原创 2013-06-26 21:11:54 · 8608 阅读 · 4 评论 -
ADO.NET连接数据库字符串
ACCESSODBC标准安全"Driver={Microsoft Access Driver (*.mdb)}; Dbq=C:\mydatabase.mdb; Uid=Admin; Pwd=; "工作组"Driver={Microsoft Access Driver (*.mdb)}; Dbq=C:\mydatabase.mdb; S转载 2013-07-22 16:59:44 · 1496 阅读 · 0 评论 -
C#将汉字转换为拼音(按照拼音搜索)
http://www.haogongju.net/art/1955397可以将汉字字符串的首字母提取出来,例如:产品名称:蒙牛酸酸乳,提取后:MNSSR,可用于按照拼音查询。比如:你想查询某人姓名,只需输入名字缩写即可,还有其它的用处,你可以自己挖掘。如果觉得对你有用,别忘了顶一下,谢谢!using System;using System.Collections.Ge转载 2013-08-05 16:45:11 · 5039 阅读 · 0 评论 -
XML序列化与反序列化
1. 序列化和反序列化的作用使用XML序列化能够方便XML的存储或传输,能够把一个对象的公共域和属性保存为一种序列格式的过程;反序列化则是使用序列化的状态信息将对象从序列XML状态还原为初始状态的过程。2. 如何进行序列化与反序列操作.NETFramework提供了System.Runtime.Serialization和System.Xml.Serialization以提转载 2013-08-22 18:30:43 · 1798 阅读 · 0 评论 -
WPF的简单关闭动画特效
运行是动态的没办法截图,这个是关闭窗口时有一个关闭的动画! 页面代码:Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" x:Class="LianXi.Window转载 2013-12-02 16:04:32 · 2121 阅读 · 0 评论 -
C#多线程学习(六) 互斥对象
如何控制好多个线程相互之间的联系,不产生冲突和重复,这需要用到互斥对象,即:System.Threading 命名空间中的 Mutex 类。我们可以把Mutex看作一个出租车,乘客看作线程。乘客首先等车,然后上车,最后下车。当一个乘客在车上时,其他乘客就只有等他下车以后才可以上车。而线程与Mutex对象的关系也正是如此,线程使用Mutex.WaitOne()方法等待Mutex对象被释放,如果它转载 2013-04-17 09:02:46 · 697 阅读 · 0 评论 -
C#多线程学习(五) 多线程的自动管理(定时器)
Timer类:设置一个定时器,定时执行用户指定的函数。 定时器启动后,系统将自动建立一个新的线程,执行用户指定的函数。初始化一个Timer对象: Timer timer = new Timer(timerDelegate, s,1000, 1000); // 第一个参数:指定了TimerCallback 委托,表示要执行的方法;// 第二个参数:一转载 2013-04-17 09:02:05 · 789 阅读 · 0 评论 -
C#异步调用的好处和方法
最经公司工作需要调用一个外部的webservice,同时要将传出的数据进行保存,以自己以前的习惯,就打算逐步操作,失败啊,完全没考虑过用户体验效果,在同事指点下,意识到使用异步调用的好处,随便将自己找的一些资料留以保存,以戒后误! 我们要明确,为什么要进行异步回调?众所周知,普通方法运行,是单线程的,如果中途有大型操作(如:读取大文件,大批量操作数据库,网络传输等),都会导致方法转载 2013-03-08 18:59:45 · 709 阅读 · 0 评论 -
c#深度复制 浅度复制
c#中没有指针的概念。但并不代表c#中没有引用的地址。相反,可能很多人会忽略这点。如果不遇到问题,我可能会一直在这个地方模模糊糊吧。举个实际碰到的例子。有一个类。实例化复制后想保留这个实例的一个备份。例如 //Clone类中包含一个int length字段。Clone cloneTest=new Clone();Clone cloneCopy=new Clone转载 2013-02-27 17:30:30 · 839 阅读 · 0 评论 -
C# Serializable(转)
http://www.cnblogs.com/zwl12549/archive/2007/08/14/854718.htmlC# SerializableSystem.SerializableAttribute串行化是指存储和获取磁盘文件、内存或其他地方中的对象。在串行化时,所有的实例数据都保存到存储介质上,在取消串行化时,对象会被还原,且不能与其原实例转载 2013-02-28 11:07:39 · 456 阅读 · 0 评论 -
C# 堆栈与堆(托管堆)
首先堆栈和堆(托管堆)都在进程的虚拟内存中。(在32位处理器上每个进程的虚拟内存为4GB)堆栈stack堆栈中存储值类型。堆栈实际上是向下填充,即由高内存地址指向地内存地址填充。堆栈的工作方式是先分配内存的变量后释放(先进后出原则)。堆栈中的变量是从下向上释放,这样就保证了堆栈中先进后出的规则不与变量的生命周期起冲突!堆栈的性能非常高,但是对于所有的变量来说还不太灵活,而且转载 2013-03-19 10:37:38 · 955 阅读 · 0 评论 -
基于.net开发chrome核心浏览器【一】
在博客园看到一篇文章,.NET调用Chrome核心,应该可以在以后有涉及到相关的开发,暂时收藏下来。http://www.cnblogs.com/liulun/archive/2013/03/18/2874276.html说明: 这是本系列的第一篇文章,我会尽快发后续的文章。源起 1.加快葬送IE6浏览器的进程 世界上使用IE6浏览转载 2013-03-19 10:04:41 · 952 阅读 · 0 评论 -
System.Diagnostics.Process.Start("explorer.exe", path) 不完善之处
string path = @"C:\Program Files\IIS\..\Lenovo"; if(Directory.Exists(path)){ System.Diagnostics.Process.Start("explorer.exe", path); }这个方法有些不完善,只能打开绝对路径,不能打开的Path中 具有../../../这样的符号这样的相对路径,在Di原创 2013-04-01 18:53:19 · 4116 阅读 · 0 评论 -
C#多线程学习(一) 多线程的相关概念
什么是进程?当一个程序开始运行时,它就是一个进程,进程包括运行中的程序和程序所使用到的内存和系统资源。而一个进程又是由多个线程所组成的。什么是线程?线程是程序中的一个执行流,每个线程都有自己的专有寄存器(栈指针、程序计数器等),但代码区是共享的,即不同的线程可以执行同样的函数。什么是多线程?多线程是指程序中包含多个执行流,即在一个程序中可以同时运行多个不同的线程转载 2013-04-17 08:57:09 · 612 阅读 · 0 评论 -
C#多线程学习(二) 如何操纵一个线程
下面我们就动手来创建一个线程,使用Thread类创建线程时,只需提供线程入口即可。(线程入口使程序知道该让这个线程干什么事)在C#中,线程入口是通过ThreadStart代理(delegate)来提供的,你可以把ThreadStart理解为一个函数指针,指向线程要执行的函数,当调用Thread.Start()方法后,线程就开始执行ThreadStart所代表或者说指向的函数。 打开你的转载 2013-04-17 08:59:25 · 645 阅读 · 0 评论 -
C#多线程学习(三) 生产者和消费者
前面说过,每个线程都有自己的资源,但是代码区是共享的,即每个线程都可以执行相同的函数。这可能带来的问题就是几个线程同时执行一个函数,导致数据的混乱,产生不可预料的结果,因此我们必须避免这种情况的发生。C#提供了一个关键字lock,它可以把一段代码定义为互斥段(critical section),互斥段在一个时刻内只允许一个线程进入执行,而其他线程必须等待。在C#中,关键字lock定义如转载 2013-04-17 09:00:28 · 553 阅读 · 0 评论 -
C#多线程学习(四) 多线程的自动管理(线程池)
在多线程的程序中,经常会出现两种情况:一种情况: 应用程序中,线程把大部分的时间花费在等待状态,等待某个事件发生,然后才能给予响应 这一般使用ThreadPool(线程池)来解决;另一种情况:线程平时都处于休眠状态,只是周期性地被唤醒 这一般使用Timer(定时器)来解决;ThreadPool类提供一个由系转载 2013-04-17 09:01:15 · 899 阅读 · 0 评论 -
VS恢复默认设置的2种方法
转自:http://www.liangshunet.com/ca/201307/428462267.htm 如果VS出现问题或设置变乱,可以通过恢复默认设置使之回到安装成功时的状态,从而解决出现的问题。VS恢复默认设置的方法有2种,分别是:通过“导入和导出设置”实现和通过命令实现。 一、通过“导入和导出设置”实现VS恢复默认设置 1、快捷步骤 工具转载 2015-02-26 10:23:28 · 24635 阅读 · 1 评论