- 博客(36)
- 资源 (28)
- 收藏
- 关注
原创 文件创建、读写操作
if (!Directory.Exists("F:\\TestTxt")) { Directory.CreateDirectory("F:\\TestTxt"); if (!File.Exists("F:\\TestTxt\\TestTxt.txt")) {
2015-05-31 10:03:39 512
原创 C# 堆和栈
区别1:栈是编译期间分配好的内存空间。堆是运行期间动态分配的内存空间。区别2:栈是一片连续的内存域,系统自动分配和维护,保持着先进先出的原则。 堆是是不连续一片的存储域,无序的,由用户自己控制。当内存不够用时,由GC回收。http://www.cnblogs.com/codingsilence/archive/2011/02/28/2146584.html
2015-05-31 09:18:24 557 1
原创 GC
GC是一个抽象类,控制系统的垃圾回收器(自动回收会未使用的内存服务)。GC.MaxGeneration:获取系统当前支持的最大代数。最大值为2。代的由来? 微软总结了一些过去的开发中出现的现象,其中有一条就是,越是新的对象,越是最快被丢弃不再使用。 微软根据这个经验在内存回收中引入了Generation的概念,此处暂时将其翻译成代。代的使用规
2015-05-27 11:24:24 602
原创 C# 窗体抖动
private void button1_Click(object sender, EventArgs e) { int recordx = this.Left; //指定窗体左边值 int recordy = this.Top; //指定窗体上边值 for (int i = 0; i < 10; i++)
2015-05-23 15:43:43 831
原创 C# 网页登录
//登录http://218.196.244.90:8080/dz1.phpwinform界面一个button,一个textbox,一个webBrowser1. private void button1_Click(object sender, EventArgs e) { string sUrl = textBox1.Text.Trim();
2015-05-17 22:11:55 1407
原创 C# 截图
第一步:下载cutimage.exe(http://download.csdn.net/detail/ilipan/8705037)第二步:在代码中添加: System.Diagnostics.Process.Start("cutimage.exe");
2015-05-15 22:43:29 593
原创 C# winform皮肤
怎么更改win form皮肤,今天学到了一点,分享一下:1.首先下载WinForm皮肤包(http://download.csdn.net/detail/ilipan/8704927)。2.新建winform窗口。3.导入动态链接库文件:IrisSkin2.DLL。4.添加控件skinEngine。5.编写代码: string skinPath = "Sk
2015-05-15 22:15:26 1432
原创 JSP application和session
application: 服务器启动后就产生了这个application对象,当客户再所访问的网站的各个页面之间浏览时,这个application对象都是同一个,直到服务器关闭。所有客户的application对象都是同一个,即所有客户共享这个内置的application对象。 session:客户端启动,产生一个session对象,当客户再所访问的网站的各个页面之间浏览时,这个ap
2015-05-13 11:53:27 1225
原创 C# Winform学习笔记
TopMost:窗体是否始终显示在最前面。Application.Exit():退出程序。MessageBox.Show("你确定要退出吗?", "提示信息", MessageBoxButtons.YesNo, MessageBoxIcon.Stop) == DialogResult.YesFormBorderStyle MdiParent=this; 当
2015-05-11 18:12:05 377
原创 C# 反射
一、什么是反射 反射提供了封装程序集、模块和类型的对象(Type 类型)。可以使用反射动态创建类型的实例。将类型绑定到西安有对象。 或从现有对象获取类型并调用其方法或访问字段。如果代码是用了属性,亦可以利用反射对他们进行访问。 概括来说也就是一种了解对象内部的方法。 //代码展示了使用
2015-05-08 18:07:16 478
原创 C#互操作性
互操作性使您能够保留和利用在现有非托管代码中的投入。托管代码:运行在公共语言运行库 (CLR) 的控制之下的代码。非托管代码:运行在 CLR 之外的代码称为“非托管代码”。COM、COM+、C++ 组件、ActiveX 组件 和 Win32 API 都是非托管代码的示例。为什么要使用互操作性呢?.NET是建立在操作系统的之上的一个开发框
2015-05-08 09:36:51 744
原创 C# 动态链接库
动态链接库是实现共享函数库概念的一种方式。扩展名为".dll"。动态链接库提供了一种方法,使进程可以调用不属于其可执行代码的函数。函数的可执行代码位于一个DLL文件中,该DLL包含一个或多个已被编译,链接并与他们的进程分开存储的函数。DLL有助于共享数据和资源,多个应用程序可同时访问内存中的单个DLL副本。使用动态链接库可以更为容易地将更新应用于各个模块,而不会影响该程序的其他部分
2015-05-07 21:01:30 1181
原创 C# 应用程序集
程序集是包含编译好的、面向.NET Framework的代码的逻辑单元。这句话可以理解如下: 首先,程序集是代码的逻辑单元,是逻辑上的概念。 它不完全等价于编译好的DLL物理文件, 但一般我们认为静态专用程序集与编译出的DLL文件或EXE文件是一致的。 其次,它是被编译好的。它不是项目名称或命名空间,更不是源代码。
2015-05-07 17:47:32 1120
原创 C# 应用程序域
应用程序域是一种边界,它由公共语言运行库围绕同一应用程序范围的对象建立。应用程序域为隔离正在运行的应用程序提供了一种灵活而安全的方法。隔离应用程序对于程序安全十分重要。应用程序域的一些方法及说明:代码说明:创建一个应用程序域NewApplicationDomain, 然后加载并执行位于C盘目录下的Hello World.exe,
2015-05-07 16:44:28 2445
原创 C#特性(Attribute)之预定义特性(Conditional)
特性(Attribute)是用于在运行时传递程序中各种元数据(类、方法、结构、枚举、组件)的行为性声明标签。特性用于添加元数据,如编译器指令和注释、描述、方法、类等其他信息。.NET 框架提供了两种类型的特性:预定义特性和自定义特性。Net 框架提供了三种预定义特性:Conditional 这个预定义特性标记了一个条件方法,其执行依赖于他的预处理标识符。//可以注释#
2015-05-07 09:48:57 3242
原创 C# 点阵列(BitArray)
管理位置的压缩数组,该值表示布尔值,true表示打开的(1),false表示位是关闭的(0)。当您需要存储位,但是事先不知道位数时,则使用点阵列。using System;using System.Collections;namespace CollectionsApplication{ class Program { static void Main(s
2015-05-06 21:29:04 1516
原创 C# 队列(Queue)
队列(Queue)代表了一个先进先出的对象集合。using System;using System.Collections;namespace CollectionsApplication{ class Program { static void Main(string[] args) { Queue q =
2015-05-06 20:55:16 832
原创 C# 堆栈(Stack)
堆栈(Stack)代表了一个后进先出的对象集合。using System;using System.Collections;namespace CollectionsApplication{ class Program { static void Main(string[] args) { Stack st =
2015-05-06 20:49:41 547
原创 C# 排序列表(SortedList)
SortedList类代表了一系列按键来排序的键/值对。这些键值可以通过键和索引来访问。using System;using System.Collections;namespace CollectionsApplication{ class Program { static void Main(string[] args) {
2015-05-06 20:36:38 1429
原创 C# 哈希表(Hashtable)
Hashtable类代表了一系列基于键的哈希代码组织起来的key/value对。他使用键来访问集合中的元素。using System;using System.Collections;namespace CollectionsApplication{ class Program { static void Main(string[] args)
2015-05-06 20:24:29 439
原创 C# 动态数组(ArrayList)
动态数组(ArrayList)代表可单独被索引的对象的集合。动态数组可以自动调整大小。允许动态内存的分配,怎加,搜索,排序。using System;using System.Collections;namespace CollectionApplication{ class Program { static void Main(string
2015-05-06 20:11:15 619
原创 C# 可空类型
可以为null的类型赋其基础类型正常范围的值和null值。例如:Nullable可以赋值为-2147483618到2147483618之间任意值和null。(int?=null 或int?=9)在处理数据库和其他包含可能未赋值的元素的数据类型时,将 null 赋值给数值类型或布尔型的功能特别有用。例如,数据库中的布尔型字段可以存储值 .例子说明:using System;na
2015-05-06 19:40:27 931
原创 C# 属性
属性提供了灵活的读取机制、编写或计算某个私有字段的值。可以像使用公共数据成员一样实用属性。这有助于提高方法或成员的安全性和灵活性。属性使类能够以一种公开的方法获取和设置值,同时隐藏实现或验证代码。get 属性访问器用于返回属性值,而 set 访问器用于分配新值。 这些访问器可以有不同的访问级别。value 关键字用于定义由 set 取值函数分配的值。
2015-05-06 18:04:12 548
原创 C# 索引器
索引器允许累或结构的实例像数组一样进行索引。当你定义一个索引器时,该类的行为就会像一个虚拟数组,你可以使用数组访问运算符([])来访问该类的实例。以为所引起语法如下:element-type this[int index] { // get 访问器 get { // 返回 index 指定的值 } // set 访问器 set
2015-05-06 17:31:16 486
原创 C# 不安全代码
当一个代码块使用unsafe修饰符标记时,C#允许在函数中使用指针变量。不安全代码或非托管代码是指使用了指针变量的代码块。下面的实例说明了 C# 中使用了 unsafe 修饰符时指针的使用:using System;namespace UnsafeCodeApplication{ class Program { static unsafe void
2015-05-06 16:37:52 1070
原创 C# 预编译指令
预编译指令指导编译器在实际编译开始之前对信息进行预处理。所有预处理指令都是以#开始。在一行上,只有空白字符可以出现在预处理指令之前。预处理器指令不是语句,不用以分号结束。C#编译器没有一个单独的预处理器。C#中预处理器指令在条件编译中起作用。
2015-05-06 16:10:12 1166
原创 C# WebRequest
WebRequest 是 .NET Framework 的请求/响应模型的abstract 基类,用于访问 Internet 数据。 使用该请求/响应模型的应用程序可以用协议不可知的方式从 Internet 请求数据,在这种方式下,应用程序处理 WebRequest 类的实例,而协议特定的子类则执行请求的具体细节。using System;using System.IO;using
2015-05-05 08:58:05 794
原创 C# 传统的委托、匿名方法、Lambda对比
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace LambdaDemo { class Program { static void Main(string[] args) {
2015-05-04 22:29:09 462
原创 C# Lambda
Lambda 表达式是一种可用于创建委托或表达式目录树类型的匿名函数。通过使用 lambda 表达式,可以写入可作为参数传递或作为函数调用值返回的本地函数。 若要创建 Lambda 表达式,需要在 Lambda 运算符=> 左侧指定输入参数(如果有),然后在另一侧输入表达式或语句块。 例如,lambda 表达式x => x * x 指定名为 x 的参数并返回 x
2015-05-04 22:20:03 393
原创 C# 匿名方法
匿名方法不包含方法名(定义的时候)。好处仅仅是方便,不用专门去定义一个方法。因此减少了实例化委托所需的编码系统开销。所以匿名方法只适用于简短的方法体、临时使用的情况。尤其是在C# 3.0后出了Lambda表达式后用途更广了。 例如,如果创建方法所需的系统开销是不必要的,则指定代码块(而不是委托)可能非常有用。 启动新线程即是一个很好的示例。无需为委托创建更多
2015-05-04 22:02:36 597
原创 C# 反射
通过 System.Reflection 命名空间中的类以及System.Type,您可以获取有关已加载的程序集和在其中定义的类型(如类、接口和值类型)的信息。您也可以使用反射在运行时创建类型实例,以及调用和访问这些实例。 反射是一个程序集发现及运行的过程,通过反射可以得到*.exe或*.dll等程序集内部的信息。使用反射可以看到一个程序集内部的接口、类、方法、字段、属
2015-05-04 21:20:07 549
原创 C#泛型
泛型(generic)是C#语言2.0和通用语言运行时(CLR)的一个新特性。泛型为.NET框架引入了类型参数(type parameters)的概念。 类型参数使得设计类和方法时,不必确定一个或多个具体参数,具体参数可延迟到客户代码中声明、实现。这意味着使用泛型的类型参数T,写一个类MyList,客户代码可以这样调用:MyList, MyList或MyList。这避免了运
2015-05-04 17:47:44 435
原创 C# Predicate
一、Predicate是什么?(注:以下摘自C#技术文档) 摘要:表示定义一组条件并确定指定对象是否符合这些条件的方法。 public delegate bool Predicate(T obj)。 参数:obj:要按照由此委托表示的方法中定义的条件进行比较的对象。 类型参数:T:要比较的对象的
2015-05-04 15:11:20 10052
原创 .html和.jsp
.HTML页面是静态页面,也就是事先由用户写好放在服务器上,由web服务器向客户端发送。.JSP页面是动态页,有JSP容器执行该页面的Java代码部分然后实时生成的页面。Ajax不是某种页面,它实际上是一种框架.具体包括:XHTML和CSS使用文档对象模型(DocumentObjectModel)作动态显示和交互使用XML和XSLT做数据交互和操作使用XMLHttpRequest进行异步数
2015-05-03 18:04:51 522
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人