c#
认真看海
踏踏实实做事
展开
-
【第15天】Windows控件-C/S程序的基础
原创 2023-08-02 00:07:28 · 169 阅读 · 0 评论 -
【第14天】Windows交互式图形界面_Mdi窗体
Mdi窗体原创 2023-07-27 00:05:30 · 196 阅读 · 0 评论 -
【第13天】Windows交互图形界面
Windows环境中主流的应用程序都是窗体应用程序,Windows窗体应用程序比命令行应用程序要复杂的多,理解它的结构的基础是理解窗体,所以深刻认识Windows窗体变得尤为重要,本章将对Windows窗体应用程序的基本开发步骤,form窗体的使用和md i窗体的使用进行详细讲解。原创 2023-07-21 00:02:32 · 236 阅读 · 0 评论 -
【第12天】面向对象程序设计_多态
多态是面向对象编程的基本特征之一,它使得派生类的实力可以直接赋予鸡肋的对象,然后直接就可以通过这个对象调用派生类的方法。在程序中类的多态性是通过派生类中重写基类的需方法来实现的。原创 2023-07-20 00:04:33 · 74 阅读 · 0 评论 -
【第11天】面向对象程序设计_对象的创建,使用,继承
从这里可以看出张三和李四有很多共同点,他们都在某个农村生活,早上都要出门务农,晚上都会回家,对于这样相似的对象就可以将其抽象为一个数据类型,此处抽象为农民,这样只需要将农民这个类型编写好,程序中就会很方便的创建张三和李四这样的对象,但代码需要修改时,只需要对农民类型进行修改即可。当用户使用new关键字创建一个对象后,可以使用对象.类成员来获取对象的属性和行为,前文已经提到过,对象的属性和行为在类中是通过类成员变量和成员方法的形式来表示的,所以当对对象获取类成员,时就相应,的获取了,对象的,属性和行为。原创 2023-07-18 23:01:55 · 108 阅读 · 0 评论 -
【第十天】面向对象程序设计_方法_类的静态成员
一个方法的名称和参数列表定义了该方法的签名,具体的讲一个方法的签名由他的名称及参数的个数,修饰符和类型组成。返回值类型不是方法签名的组成部分,参数的名称也不是方法签名的组成部分。如果定义的方法有返回值,则必须使用return关键字返回一个指定类型的数据,例如定义一个返回值类型为int的方法,就必须使用return返回一个int类型的值。方法的类或结构中声明,声明时需要指定访问级别,返回值方法名称及方法参数,方法参数放在括号中,并用逗号隔开,括号中没有内容表示声明的方法没有参数。原创 2023-07-16 23:59:45 · 81 阅读 · 0 评论 -
【第九天】面向程序设计_类
class book。原创 2023-07-16 00:23:16 · 127 阅读 · 0 评论 -
【第八天】面向程序设计_面向对象概述
面向对象中的对象,通常是指客观世界中存在的对象,这个对象具有唯一性,对象之间各不相同,每一个对象都有自己的运动规律和内部状态,对象与对象之间有时可以相互联系,相互作用的。另外对象也可以是一个抽象的事物,例如可以同圆形,正方形,三角形等图形中抽象出一个简单的图形,简单图形就是一个对象,它有自己的属性和行为,图形中边的个数是它的属性,图形的面积也是它的属性,输出图形的面积就是它的行为概括的讲面向对象技术是一种从组织结构上模拟客观世界的方法。原创 2023-07-15 00:04:52 · 122 阅读 · 0 评论 -
【第七天】字符串(下)
判断字符串首尾内容字符串的拼接和比较字符串字符串的大小写转换和格式化字符串截取字符串分割字符串去除空白内容替换字符串可变字符串类原创 2023-07-13 00:08:03 · 41 阅读 · 0 评论 -
【第六天】字符串的定义(上)
字符串,顾名思义,就是用字符拼接成的文本值。字符串在储存上类似数组,,不仅字符串的长度可取,每一位的元素也可以取。在c#语言中,可以通过string类创建字符串。原创 2023-07-09 00:12:52 · 142 阅读 · 0 评论 -
【第四天学习】数组
速度是一个相同类型的用同一个标识符封装到一起的基本数据类型,可以使用一个统一的速度名或者是索引来唯一确定速度中的每个元素,它的执行效率非常高。数组中每一个变量称为数组的元素,数组能够容纳元素的数量成为速度的长度,速度的每一个元素都具有唯一的索引,与其相对应速度的索引从零开始。原创 2023-07-07 00:25:29 · 120 阅读 · 0 评论 -
【第四天学习】决策分支,判断语录
If语句其实就是一个判断语句,它会判断括号内的参数是否是true,如果是true的话,它会输出花括号里面的内容,如果不是true的话,他会输出else里面的内容。当表达式的值为真实,开始循环执行语句,当表达式的值为假时,退出循环,执行循环外的下一条语句循环,每次执行完语句后,回到表达式处重新开始判断,重新计算表达式的值。If语句是对基础的一种选择结构语句,它主要有三种形式,分别是if语句,if else语句和if else If else多分支语句。Break语句的话,一般是跳出循环使用。原创 2023-07-05 23:56:26 · 196 阅读 · 0 评论 -
【第三天】变量,常量,数据类型
包括方法的参数都属于局部变量,局部变量只有在当前定义的方法内有效不能用于类的其他方法中,局部变量的生命周期取决于方法,当方法被调用时,编译器为方法中的局部变量分配内存空间,当该方法调用结束后,则会释放方法中局部变量占用的内存空间,局部变量也将会被销毁。一般来说,常量就是程序运行过程中值不能改变的量,比如现实生活中的居民身份证号码,数学运算中π的值等,这些都不会发生改变的,他们都可以被定义为常量。在类体中定义的变量被称为成员变量,成员变量在整个类中都有效,类的成员变量又分为两种,即静态变量和实例变量。原创 2023-07-05 00:04:18 · 133 阅读 · 0 评论 -
C# 通用方法MD5计算
基于c#的MD5加密算法转载 2022-10-27 18:05:26 · 4778 阅读 · 1 评论 -
C#中排序實例記錄,Swap和Sort兩個方法實例
分享方法,在程式中需要對list數據進行排序的方法分享。其實是給我自己看的,以後遇到類似的忘記方法一翻就看到了。一,自己寫方法進行交換:List在C#中的排序 List<int> myArray = new List<int>(); int[] nInt = {0,8,3,4,1,7,6 }; for (int j = 0; j < nInt.Length;j++ ) { if (!myArray.Contains(nI原创 2021-08-05 15:58:25 · 427 阅读 · 0 评论 -
使用c#建立奥运奖牌榜
使用c#建立奥运奖牌榜,效果如下图,里面的部分方法经常用到,故记录一下,以便查阅一、获取奖牌数据腾讯给我们提供了一个奥运奖牌榜:https://2020.qq.com/medal.html我们需要从这个页面爬取数据一般来说,这样的页面,都有单独的数据来源页供我们使用,所以我们需要找出这个数据地址。打开浏览器调试工具F12,找到network一项,刷新页面,即可看到页面数据信息,我们向下慢慢寻找过去。寻找的时候,点击一项,即可在右边看到文件内容,我们猜测,页面应该是通过JSON传递数据的,原创 2021-08-04 18:03:07 · 321 阅读 · 0 评论 -
c# 路径的截取、文件名称截取、后缀名截取等操作
记录前辈的方法,以便用时查找。c# 路径的截取、文件名称截取、后缀名截取等操作,有方法和结果,对比使用。方法string filePath = @"E:\Randy0528\中文目录\JustTest.rar";Response.Write("文件路径:"+filePath);Response.Write("<br/>更改路径字符串的扩展名。<br/>");Response.Write(System.IO.Path.ChangeExtension(filePath, "t原创 2021-08-04 09:33:06 · 1793 阅读 · 2 评论 -
C# ASCII码字符转换
C#单纯的字母数字ASCII码转换字母转换成数字byte[] array = new byte[1]; //定义一组数组arrayarray = System.Text.Encoding.ASCII.GetBytes(string); //string为待转换的字母int asciicode = (short)(array[0]); //asciicode 为整数ASCII码ASCII码 = Convert.ToString(asciicode); //将转换一的ASCII码转换成string原创 2021-08-04 09:25:52 · 13572 阅读 · 0 评论 -
System.IO.Directory.GetCurrentDirectory()方法线下测试OK,线上获取不到正确的执行程式路径
.Net Framework中,System.IO.Directory.GetCurrentDirectory()方法用于获得应用程序当前工作目录如果使用此方法获得应用程序所在的目录,应该注意:System.IO.Directory.GetCurrentDirectory()方法获得的目录路径随着OpenFileDialog、SaveFileDialog等对象所确定的目录而改变(切换工作目录)一般情况下,应该使用System.Windows.Forms.Application.StartupPath或S原创 2020-11-30 13:53:41 · 582 阅读 · 0 评论 -
“该行已经属于另一个表“
DataTable dt1 = new DataTable(); DataRow dr1 = dt1.NewRow(); DataTable dt2 = new DataTable(); dt2.Rows.Add(dr1); //会给你错误已经dr1属于另一个datatable,在这种情况下你可以这样做dt2.ImportRow(dr1); // safe dt1.Rows.Add(dr1); //安全,因为dr1行属于DataTable1,所以没有异常提高dt2.Rows.Add(dr1);原创 2020-10-27 13:39:42 · 246 阅读 · 0 评论 -
C#操作.XML文件;将.XML文件转为Datatable进行操作;C#读取.XML文件
今天接到一个需求,公司的错误信息会被保存在xml文件中,我需要统计一下所有错误信息。成百上千份Error_Log肯定是程式解决了。如下图,为Error_Log文件using System.Xml;DataTable dt = new DataTable();for (int ii = 1; ii <= 605; ii++) { // 拼接文件名 string sName = ""; if (ii < 10) { sName = "原创 2020-10-27 13:35:08 · 1391 阅读 · 0 评论 -
c#实现邮件发送的实例(利用qq邮箱进行范例测试)
如下为c#发送邮件的范例:可能发生的问题(可以直接通过超链接查看问题解决方法):1、Smpt命令顺序不正确。 服务器响应为: Error: need EHLO and AUTH first !2、头值中找到无效字符3、“qq授权码”不知道是什么的可以直接百度解决。using System.Net.Mail;MailAddress from = new MailAddress("*****@qq.com", "hellohello");//收件人地址MailAddress to = new原创 2020-10-12 16:33:57 · 534 阅读 · 0 评论 -
c# 链接数据库获取资料;System.Data.SqlClient
虽然简单,但还是记录一下,方便后续查看。 // 資料庫測試SqlConnection lo_conn = new SqlConnection("Server=服务器的ip地址;Database=数据库名字;uid=用户名;pwd=用户密码");lo_conn.Open();SqlCommand lo_cmd = new SqlCommand(); //创建命令对象lo_cmd.CommandText = "select * from TableName"; //写SQL语句lo_cmd.Conn原创 2020-10-09 18:03:43 · 1428 阅读 · 0 评论 -
Smpt命令顺序不正确。 服务器响应为: Error: need EHLO and AUTH first !
刚发现以前做的QQ邮箱发送邮件不能用了,查找了下原因:未加( EnableSsl SSL加密连接 )导致的,顿时觉得很坑,以前QQ邮箱也没有这个限制啊,可能是最近加的。好吧不多说直接从头走起,照顾下新人 O(∩_∩)O~1、首先在QQ邮箱当中开启“POP3/SMTP服务”2、获取“授权码”在上一步刚开通后也会提示出“授权码”,已开通的可以看下图。3、编码MailAddress from = new MailAddress("*****@qq.com", "hellohello");//收转载 2020-10-09 17:54:26 · 1833 阅读 · 2 评论 -
c# 发送邮件错误: 头值中找到无效字符
问题:邮件发送失败,头值中找到无效字符分析:大概率是某些不能使用中文字符的地方使用了中文。我的问题解决(如下):MailAddress from = new MailAddress("*****@qq.com", "你好你好");//报错MailAddress from = new MailAddress("*****@qq.com", "hellohello");//正常如果不能解决对应问题请检查计算机名是否带有中文,我确认到这个原因也会导致类似的错误出现。如下是邮件发送的code:Mai原创 2020-10-09 17:47:53 · 779 阅读 · 0 评论 -
System.Net.Mail 详细讲解
我觉得这个文章写得很详细,收藏一下,进行学习。转载 2020-10-09 17:35:57 · 935 阅读 · 0 评论 -
SQL如何根据上一行的值来计算这一条的值
问题:排序 量 现有库存 计算后库存量(这一列怎么计算出来?) 1 -5 185 180 由于现有库存是185,量是-5,所以计算后库存量为185+(-5)=1802 -10 185 170 上一行的计算后库存量为180,当前行的量为-10,这一行的计算后库存量为1703 15 185 185 上一行的计算后库存量为170,当前行的量为15,这一行的计算后库存量为1854 160 185 345 以下所有行,都是这个规律一直向下推5 -15 185 330 6原创 2020-10-09 17:14:39 · 3918 阅读 · 0 评论 -
C#不同的Code文件设置窗口资料;跨文件设置label动态数据;
public static MainForm frm = null; public void setLabel(string str) { labelName.Text = str; //Application.DoEvents(); //labelName.refresh(); } private void btn_Run_Click(object sender, EventArgs e) { InitializeComponent(.原创 2020-08-26 18:14:17 · 166 阅读 · 0 评论 -
C# 图片处理;缩放图片
/// <summary> /// 缩小图片 /// </summary> /// <param name="stroldpic">源图文件名(包括路径)</param> /// <param name="strnewpic">缩小后保存为文件名(包括路径)</param> /// <param name="intwidth">缩小至宽度<原创 2020-08-26 17:45:18 · 490 阅读 · 0 评论 -
C# label換行
1、label1.Text = “你好” + “\r\n” + “世界”;2、label1.Text = “你好” + Environment.NewLine + “世界”;以上两个方法都可以实现换行操作,但是不同的平台换行符是不同的,以下为Environment.NewLine方法的描述,可以看出Environment.NewLine的通用性更强,为保持平台的通用性,最好用 Environment.NewLine。Environment.NewLine方法描述: // // Sum原创 2020-08-26 17:40:45 · 2796 阅读 · 0 评论 -
C#可视化打开Excel
C#打开Excel文档方法一:调用Excel的COM组件在项目中打开Add Reference对话框,选择COM栏,之后在COM列表中找到"Microsoft Excel 11.0 Object Library"(Office 2003),然后将其加入到项目的References中即可。Visual C#.NET会自动产生相应的.NET组件文件,以后即可正常使用。按钮的点击事件如下:private void button1_Click(object sender, EventArgs e) {原创 2020-08-26 17:07:20 · 1732 阅读 · 1 评论 -
DataTable.Compute错误:无效的聚合函数 Sum()和类型 String 的用法;DataTable 更改数据列的类型方法
DataTable.Compute可以进行聚合函数的操作,在进行DataTable我遇到如标题的错误,在此记录一下。如下是DataTable.Compute方法的应用通过后面的两个条件把筛选数据的栏位1进行数量相加。发生标题的原因为:“栏位1”的属性并不是int型,导致不能相加并报错。将栏位调整对应类型成功。链接为在c#调整类型的方法,提供参考。int nNum = 0;string sPartNoobject obj = DT.Compute("Sum(栏位1)", "栏位2='123' and原创 2020-06-29 09:22:01 · 3608 阅读 · 0 评论 -
Cannot navigate to XXX;F12或 Go to definition 无效。
VS作為宇宙第一IDE肯定会是很多人的首选,今天记录一下出现的某个问题,F12是 Go to definition 的快捷键,某次项目打开无法直接进去自己定义的方法,报如下图的错误:解决办法:将项目关掉,删掉项目下的.suo文件,重新打开项目重新编译应该就可以了。...原创 2020-08-13 09:36:06 · 489 阅读 · 0 评论 -
CMD关闭所有表格(Excel)文件
记录一下方便查找:taskkill -f -im excel.exe原创 2020-08-10 09:17:53 · 2104 阅读 · 0 评论 -
C# 绝对值
自己記錄和分享C# 將數字取絕對值的方法:int nNum = -12;double dNum = -1.65802937282;// 絕對值操作nNum = Math.Abs(nNum);dNum = Math.Abs(dNum);原创 2020-08-05 15:27:28 · 16314 阅读 · 2 评论 -
error CS0103: 当前上下文中不存在名称“Server”; error CS0103: 当前上下文中不存在名称“Path”;error CS0103: 当前上下文中不存在名称“XXX”
Server.MapPath()的全名是System.Web.HttpContext.Current.Server.MapPath()。有时在程序调试时会提示“当前上下文中不存在名称“Server””错误,从而不支持函数Server.MapPath()的使用。尽管引用了命名空间“using System.Web;”也是无济于事,此时就需要使用其全名,或者是当前使用Server.MapPath()函数的类继承自System.Web.UI.Page。报错语句: string sConfig = Server原创 2020-07-31 18:25:01 · 9300 阅读 · 0 评论 -
error CS0103: The name ‘InterpolationMode‘ does not exist in the current con(以解決);图片改变分辨率的方法
今天处理将图片写入Excel时,需要将Excel调整大小,在下面语句总报了这个错误:Bitmap b = new Bitmap(destWidth, destHeight);Graphics g=Graphics.FromImage((System.Drawing.Image)b);g.InterpolationMode=InterpolationMode.HighQualityBicubic;//绘制图像g.DrawImage(imgToResize, 0, 0, destWidth,destH原创 2020-07-31 18:20:03 · 712 阅读 · 0 评论 -
C#判断某元素是否存在数组中非循环
我们在判断某元素是否在数组中最常用的方法是遍历这个数组进行逐个判断,以下我分享两个直接判断的方法,提供参考,也方便自己忘记时查找。判断方式1// 返回:当存在时返回数值大于0;不存在时返回数值小于0string sStr = "abc:def|123456";string[] strArr = sStr.Split('|');int nNum = Array.IndexOf(strArr , "abc:def"));//存在则大于0nNum = Array.IndexOf(strArr , "a原创 2020-07-23 13:28:29 · 979 阅读 · 0 评论 -
C# Email邮件发送,功能是密码找回或者重置功能。
最近根据公司需求,写个邮件发送。 这里面的传入的地址信息的参数都是经过加密的。 主要是保证用户信息的安全。using System;using System.Collections.Generic;using System.Configuration;using System.IO;using System.Linq;using System.Net.Mail;using System.Text;using System.Web; namespace CalslNum.Helpe转载 2020-07-15 18:10:05 · 535 阅读 · 0 评论 -
无法在 System.Int32 和 System.String 上执行“=”操作。附解決办法。
今天在將數據資料進一步篩選時發生:无法在 System.Int32 和 System.String 上执行“=”操作的錯誤,經過確認是在使用Dt.Select方法時的查詢條件“=”號兩邊不匹配導致的。 如下圖:GPU_Order是int型,‘ ’是string類型。解決辦法:將GPU_Order欄位數據轉為string類型數據,就沒有問題了。数据转换方式:1、修改资料库类型,重新将数据导出,在进行该操作。2、在程式中直接转换类型,参考方法https://blog.csdn.net/qq_418944原创 2020-07-14 17:58:13 · 5829 阅读 · 0 评论