- 博客(32)
- 问答 (1)
- 收藏
- 关注
转载 C#将Excel数据表导入SQL数据库的两种方法
方法一:实现在c#中可高效的将excel数据导入到sqlserver数据库中,很多人通过循环来拼接sql,这样做不但容易出错而且效率低下,最好的办法是使用bcp,也就是System.Data.SqlClient.SqlBulkCopy 类来实现。 using System; using System.Collections.Generic; using System
2016-04-04 21:33:33 5458
转载 C#获取本地IP地址兼容win7和xp
获取本机ip本来是很容易的,IPAddress _ip = Dns.GetHostAddresses(Dns.GetHostName())[0];就行了但是在vista win7等系统里面这样获得的是ipv6地址,private string GetLocalIp() { string localIp; IPHostEntr
2016-03-25 10:16:19 465
原创 win7 与xp 系统 DateTime.Now
在Xp环境下 ,DateTime.Now的格式为2011-6-9 10:50:00,放在数据库中格式也为2011-6-9 10:50:00(注意:此时 没有:000),然后把2011-6-9 10:50:00从数据库中读出来也是2011-6-9 10:50:00格式, 由此可总结为 Xp环境下 : DateTime.Now的显示格式为
2016-03-09 17:02:11 394
转载 带参数的多线程
1 Thread t; 2 public myThread() 3 { 4 t = new Thread(run); 5 t.Start(2); //这里吧参数传递进去 6 t.Join(); 7 8 } 9
2015-12-30 18:24:11 335
转载 MODBUS ASCII和RTU
下表是MODBUS ASCII协议和RTU协议的比较: 协议开始标记结束标记校验传输效率程序处理ASCII:(冒号)CR,LFLRC低直观,简单,易调试RTU无无CRC高稍复杂 从上表的比较我
2015-12-23 14:21:26 995
转载 终止正在执行的线程
很多人都说使用Abort方法来终止线程,其实这种做法并不可取!如果你的线程正在操作临界资源,很有可能会造成资源没有正确释放而出现死锁问题。正确的做法应该是使用标记来终止线程的执行。基本思路是:定义一个用于描述“停止”信号的变量,在整个程序启动前,设置该变量为false。在线程中,循环判断该变量是否已经被设置为true,如果没有,则继续执行,否则就退出循环并释放资源,然后退出执行。当我们需要
2015-10-30 10:59:11 516
转载 异步调用
小明在烧水,等水烧开以后,将开水灌入热水瓶,然后开始整理家务小文在烧水,在烧水的过程中整理家务,等水烧开以后,放下手中的家务活,将开水灌入热水瓶,然后继续整理家务这也是日常生活中很常见的情形,小文的办事效率明显要高于小明。从C#程序执行的角度考虑,小明使用的同步处理方式,而小文则使用的异步处理方式。同步处理方式下,事务是按顺序一件一件处理的;而异步方式则是,将子操作从主操作中分离出来,主操
2015-10-29 10:06:08 254
转载 委托
委托是C#中最为常见的内容。与类、枚举、结构、接口一样,委托也是一种类型。类是对象的抽象,而委托则可以看成是函数的抽象。一个委托代表了具有相同参数列表和返回值的所有函数。比如:view plaincopy to clipboardprint?delegate int GetCalculatedValueDelegate(int x, int y); 在上面的定义中
2015-10-29 10:03:19 234
转载 C#接口作用的深入理解
1、C#接口的作用 :C#接口是一个让很多初学C#者容易迷糊的东西,用起来好像很简单,定义接口,里面包含方法,但没有方法具体实现的代码,然后在继承该接口的类里面要实现接口的所有方法的代码,但没有真正认识到接口的作用的时候就觉得用接口是多此一举,当然你这样想那是绝对绝对错误的,比尔盖茨的微软请的员工都是比盖茨还聪明的人,他们的C#能添这样的多足吗?!关于接口的作用,网上有一位就真的深入浅出给我们
2015-10-24 13:38:10 334
转载 C#中使用ListView动态添加数据不闪烁
首先,自定义一个类ListViewNF,继承自 System.Windows.Forms.ListViewclass ListViewNF : System.Windows.Forms.ListView { public ListViewNF() { // 开启双缓冲 this.SetStyle(
2015-10-19 13:52:21 448
转载 C# ListView用法详解 很完整
一、ListView类 1、常用的基本属性: (1)FullRowSelect:设置是否行选择模式。(默认为false) 提示:只有在Details视图该属性才有意义。 (2) GridLines:设置行和列之间是否显示网格线。(默认为false)提示:只有在Details视图该属性才有意义。 (3)AllowColu
2015-09-12 15:49:46 40085 4
转载 C# winform 窗体从右下角向上弹出窗口效果
/// /// 窗体动画函数 注意:要引用System.Runtime.InteropServices; /// /// 指定产生动画的窗口的句柄 /// 指定动画持续的时间 /// 指定动画类型,可以是一个或多个标志的组合。 /// [DllImport("user32")] private static exter
2015-09-11 23:41:50 558
转载 C#设置WinForm快捷键(
1、Alt+*(按钮快捷键)按钮快捷键也为最常用快捷键,其设置也故为简单。在大家给button、label、menuStrip等其他控件的Text属性指定名称时,在其后面加上‘&’然后在加上一个指定字母即可。如:确定(&D),(Alt+D)调用。如指定多个字母,则第一个为快捷键。如:确定(&OK),(Alt+O)调用;文件(&Fill),(Alt+F)调用。2、Ctrl+*及其他组合键
2015-09-05 16:56:55 916
转载 C#动态二维数组
List arry = new List(); double[] d0 = { 1.0, 2.0, 3.0 }; arry.Add(d0); double[] d1 = { 4.0, 5.0, 6.0 }; arry.Add(d1); double[] d2 = { 1
2015-09-04 10:31:47 3821
转载 C#在结构体的定义中又包含另一个结构体的数组
struct a{public int start;public int end;}struct b{public int id;public a[] suba;}static void Main(string[] args){b newb;newb.id = 1;newb.suba = new a[10];newb.suba[0].st
2015-09-04 10:26:38 3496
转载 C#中的结构体与类的区别 .
经常听到有朋友在讨论C#中的结构与类有什么区别.正好这几日闲来无事,自己总结一下,希望大家指点.1. 首先是语法定义上的区别啦,这个就不用多说了.定义类使用关键字class 定义结构使用关键字struct.在语法上其实类和结构有着很多相似的地方. 定义类的语法 1 class Person 2 { 3 private string name; 4
2015-09-04 09:08:38 303
转载 C#中数组、ArrayList和List三者的区别 .
在C#中数组,ArrayList,List都能够存储一组对象,那么这三者到底有什么样的区别呢。数组 数组在C#中最早出现的。在内存中是连续存储的,所以它的索引速度非常快,而且赋值与修改元素也很简单。[csharp] view plaincopyprint?"FONT-FAMILY: SimSun; FONT-SIZE: 18px">//数组 st
2015-08-22 11:49:34 203
转载 枚举的一些常用操作
本章讲解如下枚举的如下几个知识点: 1、什么是枚举? 2、枚举是值类型还是引用类型? 3、如何定义枚举? 4、枚举的好处? 5、枚举在实际系统开发过程中的用处? 一、什么是枚举 枚举:用来存放一组固定的常量 它是用来解决用户进行多次if /switch重复简单的判断 二
2015-08-18 22:14:40 440
转载 C#基础--之数据类型
在第一章我们了解了C#的输入、输出语句后,我这一节主要是介绍C#的基础知识,本节的内容也是后续章节的基础,好的开端等于成功的一半。在你阅读完本章后,你就有足够的C#知识编写简单的程序了。但还不能使用继承或其它面向对象的特征。 本章主要针对以下几个部份来进行讲解: 1、电脑是由什么来存储所使用的数据? 2、基本数据类型有哪些? 3、如何声明变量和赋值? 4、变
2015-08-18 21:45:34 413
转载 C# 抽象类与抽象方法的作用与实例
在C#中,允许把类和方法声明为抽象类与抽象方法,具体的声明方法是在类名或方法名前加上abstract关键字。那么我们什么时候应该用抽象类呢?如果一个类设计的目点是用来被其它类继承的,它代表一类对象的所具有的公共属性或方法,那个这个类就应该设置为抽象类。抽象类与其它的类有什么区别呢?抽象类是不能够被实例化的。如果一个类中包含有抽象方法,那么这个类一定要声明为抽象类。同时,抽象方法一定
2015-08-16 21:16:19 2547
转载 使用COM组件实现对Excel文件的操控
1 使用COM组件操控Excel的优势和缺点优势:提供了完整的Excel操控能力。可以方便的进行复杂操作。提供了对Excel文件的底层操作,工作效率高。和VBA方式相比可以脱离特定的Excel文件进行使用。缺点:代码复杂不易理解。在操作中需要处理大量的数据类型。2.使用方法 Visual Studio 2005中默认提供了封装好的Microsoft
2015-08-09 15:22:37 3786 1
转载 C# 委托及各种写法
委托是嘛?委托是一个类型安全的对象,它指向程序中另一个以后会被调用的方法(或多个方法)。通俗的说,委托是一个可以引用方法的对象,当创建一个委托,也就创建一个引用方法的对象,进而就可以调用那个方法,即委托可以调用它所指的方法。如何使用委托?1、定义委托类型[访问修饰符]delegate 返回类型 委托名(形参);2、声明委托对象委托名 委托实例名;3、创建委托对象(确
2015-08-07 16:01:32 218
转载 C# 如何通过委托进行窗口传值
举个简单的例子吧:假如你要把Form1里的textBox1框的值赋给Form2中的textBox1框。用委托么可以这么写:Form1中using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;us
2015-08-06 18:42:23 259
转载 将dataGridView数据转成DataTable
将dataGridView数据转成DataTable如已绑定过数据源:DataTable dt = (dataGridView1.DataSource as DataTable)public DataTable GetDgvToTable(DataGridView dgv) { DataTable dt = new DataT
2015-08-06 17:38:48 671
转载 异步委托跨线程访问控件解决界面卡死
下面来看第二种方案,就是使用delegate和invoke来从其他线程中控制控件信息。网上有很多人写了这种控制方式,然而我看了很多这种帖子,表明上看来是没有什么问题的,但是实际上并没有解决这个问题,首先来看网络上的那种不完善的方式:public partial class Form1 : Form { private delegate void FlushClien
2015-08-06 15:57:36 2631
转载 C#.Net前台线程与后台线程的区别
.Net的公用语言运行时(Common Language Runtime,CLR)能区分两种不同类型的线程:前台线程和后台线程。这两者的区别就是:应用程序必须运行完所有的前台线程才可以退出;而对于后台线程,应用程序则可以不考虑其是否已经运行完毕而直接退出,所有的后台线程在应用程序退出时都会自动结束。 .Net环境使用Thread建立的线程默认情况下是前台线程,即线程属性IsBackgro
2015-08-06 11:22:07 439
转载 C#委托
1, 为什么使用委托 2.什么是委托 3.委托如何使用为什么使用委托?委托是c#中非常重要的一个概念,使用委托使程序员可以将方法引用封装在委托对象内。然后可以将该委托对象传递给可调用所引用方法的代码,而不必在编译时知道将调用哪个方法。与C或C++中的函数指针不同,委托是面向对象,而且是类型安全的。什么是委托?委托是一种引用方法的类型,一旦为委托分配了方法,委托
2015-07-28 21:24:05 247
转载 using的几种用法
1.using指令。using + 命名空间名字,这样可以在程序中直接用命令空间中的类型,而不必指定类型的详细命名空间,类似于Java的import,这个功能也是最常用的,几乎每个cs的程序都会用到。例如:using System; 一般都会出现在*.cs中。2.using别名。using + 别名 = 包括详细命名空间信息的具体的类型。这种做法有个好处就是当同一个cs引用了两个不
2015-06-24 23:02:17 508
转载 C#的Sockets用法
System.Net 命名空间中的所有其他网络访问类都建立在该套接字Socket实现之上。Socket可以象流Stream一样被视为一个数据通道,这个通道架设在应用程序端(客户端)和远程服务器端之间,而后,数据的读取(接收)和写入(发送)均针对这个通道来进行。可见,在应用程序端或者服务器端创建了Socket对象之后,就可以使用Send/SentTo方法将数据发送到连接的Socket,或者使用Rec
2015-06-23 22:07:43 560
转载 C#List<string>和string[]之间的相互转换
一、LIST概述所属命名空间:System.Collections.Generic public class List : IList, ICollection, IEnumerable, IList, ICollection, IEnumerable List类是 ArrayList 类的泛型等效类。该类使用大小可按需动态增加的数组实现 IList 泛型接口。
2015-06-23 20:29:01 2262
转载 设置RichTextBox中的指定行为选中状态!!
设置richTextBox的属性HideSelection = false; /// /// 选中行 /// /// 行号,从0开始 private void selectLine(int line) { int a = this.richTextBox1.GetFirstCh
2015-05-23 17:33:58 4094
转载 C#几种截取字符串的方法小结
1.根据单个分隔字符用split截取例如:string st="GT123_1";string[] sArray=st.split("_");即可得到sArray[0]="GT123",sArray[1]="1";2.利用多个字符来分隔字符串例如:string str = "GTAZB_JiangjBen_123";string[] sArray = str.Split
2015-05-23 11:25:52 288
空空如也
C# 用modbus tcp协议,怎么做一个上未将与多个下位机通讯
2015-12-21
TA创建的收藏夹 TA关注的收藏夹
TA关注的人