
C#
偶尔也需要用C#
天锋
用心创造
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
c#使用Selenium相关总结
c#使用Selenium相关总结原创 2023-02-09 18:22:36 · 661 阅读 · 0 评论 -
C#打包zip(包括文件夹和子文件夹下的所有文件)
下载完解压缩后,把 ICSharpCode.SharpZipLib.dll 拷贝到当前项目的目录下(如果偷懒的话,可以直接拷贝到当前项目的bin\Debug目录下),在VS打开的项目引用上右键添加引用 ICSharpCode.SharpZipLib.dll。使用方法,在外部引用using ZipOneCode.ZipProvider 后,类似调用 ZipHelper.CreateZip(@"D:\Temp\forzip", @"D:\Temp2\forzip.zip") 即可。...原创 2022-08-29 11:57:49 · 1458 阅读 · 0 评论 -
c# 字符串格式化日期时间
方法一:Convert.ToDateTime(string)string格式有要求,必须是yyyy-MM-dd hh:mm:ss方法二:Convert.ToDateTime(string, IFormatProvider)DateTime dt;DateTimeFormatInfo dtFormat = new System.GlobalizationDateTimeFormatInfo();dtFormat.ShortDatePattern = "yyyy/MM/dd";dt = Co原创 2021-08-31 09:12:35 · 17575 阅读 · 0 评论 -
C#对接php接口 Http POST上传文件
/// <summary> /// 上传文件 /// </summary> /// <param name="fileAdress">文件地址</param> /// <returns></returns> public responseObject UploadFile(string fileAdress) { /.原创 2021-08-26 18:17:11 · 393 阅读 · 0 评论 -
c#操作xml
xml文件格式如下:<?xml version="1.0" encoding="utf-8"?> <userdata createuser="false"> <dataconnection> <server>localhost</server> <uid>sa</uid> <pwd></pwd> </dataconnection> <net> <n.原创 2021-07-04 10:56:41 · 498 阅读 · 0 评论 -
C#退出时弹对话框确认退出
DialogResult dr = MessageBox.Show(" 您确定要退出吗?", "退出确认", MessageBoxButtons.YesNo, MessageBoxIcon.Warning); if (dr == DialogResult.Yes) //如果单击“是”按钮 { q.Cancel = false; //关闭窗体 .原创 2021-07-01 21:50:05 · 1188 阅读 · 0 评论 -
C# Winform程序防止多开
bool isAppRunning = false; Mutex mutex = new Mutex(true, System.Diagnostics.Process.GetCurrentProcess().ProcessName, out isAppRunning); if (!isAppRunning) { MessageBox.Show("程序已运行,不能再次打开!"); ...原创 2021-07-01 19:11:06 · 396 阅读 · 0 评论 -
C# winform判断窗体是否已打开
frm_Set frm_Set; /// <summary> /// 开始检测 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button1_Click(object sender, EventArgs e.原创 2021-07-01 10:45:13 · 3642 阅读 · 1 评论 -
C# ThreadStart带参数
1.ThreadStart线程执行带参数的方法,new Thread(new ThreadStart(delegate { ThreadTask(firstPage, lastPage); }));2.System.Threading.ParameterizedThreadStart其实没有必要,ThreadStart本来就是个委托,里面又来了个匿名方法。多了一次方法的调用,虽然性能不会影响什么,但看着很别扭。c#有一个委托System.Threading.ParameterizedThreadS原创 2021-06-13 22:37:26 · 3581 阅读 · 0 评论 -
C# 点击鼠标右键事件
运用button的MouseDown事件,来判断是点了鼠标左键或右键,例子如下:private void button1_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) { MessageBox.Show("left"); } else...原创 2021-04-14 10:01:38 · 7109 阅读 · 1 评论 -
winform关闭当前form_c#关闭窗体的四种方法
关闭窗体的四种方法1. close():指仅关闭当前窗体,如果不是主窗体(包含主线程的窗体,并非MDI窗体)的话,是无法退出整个程序的。如果有托管线程也无法退出。此方法会调用 dispose() 方法,所以它会自动的帮我们释放内存,除了以下两种情况:(1)该窗体是多文档应用程序(MDI)的一部分并且此窗体不可见;(2)此窗体是“模态”窗体。close() 方法执行的时候会触发两个事件:Form_Closing 和 Form_Closeed 事件,Form_Closing 是在窗体关闭时执行,Fo原创 2021-04-12 18:07:43 · 12462 阅读 · 0 评论 -
C# WinForm 登陆成功关闭本窗体,打开主窗体的实现
首先在解决方案管理器(Program.cs)里的代码static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Form Login = new Login(); Login.ShowDialog();//显示登陆窗体 if (Login.DialogResult == Dialo原创 2021-04-12 18:05:31 · 515 阅读 · 0 评论 -
c#对当前窗口进行关闭等操作
需调用API函数需在开头引入命名空间using System.Runtime.InteropServices;获取当前窗口句柄:GetForegroundWindow()[DllImport("user32.dll", CharSet = CharSet.Auto, ExactSpelling = true)]public static extern IntPtr GetForegroundWindow();返回值类型是IntPtr,即为当前获得焦点窗口的句柄使用方法 : .原创 2021-04-12 17:39:54 · 3000 阅读 · 0 评论 -
C#获取当前日期时间
//获取日期+时间DateTime.Now.ToString(); // 2008-9-4 20:02:10DateTime.Now.ToLocalTime().ToString(); // 2008-9-4 20:12:12//获取日期DateTime.Now.ToLongDateString().ToString(); // 2008年9月4日DateTime.Now.ToShortDateString().ToString(); // 200...原创 2021-01-29 09:07:34 · 1125 阅读 · 0 评论 -
c# 判断字符串中有中文字符
使用正则表达式可以快速的判断字符串中是否有中文。代码示例: string test1 = "asdasdas121312/*-"; string test2 = "阿三大苏打"; string test3 = "asda阿三大苏打__132"; private void Start() { Debug.Log(HasChinese(test1)); Debug.Log(HasChinese(test2)); D原创 2021-01-06 15:30:27 · 877 阅读 · 1 评论 -
c#检测进程是否存在并关闭
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Diagnostics;using System.Windows.Forms;namespace WindowsFormsApplication3{ pub.原创 2020-12-26 11:30:41 · 4267 阅读 · 0 评论 -
c#读取进程列表判断程序是否已经启动
//方法一:using System.Diagnostics; Process[] vProcesses = Process.GetProcesses(); foreach (Process vProcess in vProcesses) if (vProcess.ProcessName.Equals( "iexplore ", StringComparison.OrdinalIgnoreCase)) { MessageBox.Show( "IE已经打开 "); break; }.原创 2020-12-26 11:30:01 · 1647 阅读 · 0 评论 -
C# 调用外部exe程序,并隐藏窗体
使用Process类,C#可以很方便地调用第三方exe,并可以自由地控制是否显示窗体、如何显示窗体、实现输入输出重定向。在使用之前,须先包含一个命名空间:using System.Diagnostics; Process myPro = new Process(); myPro.StartInfo.FileName = "cmd.exe"; myPro.StartInfo.UseShellExecute = false;.原创 2020-12-26 11:23:18 · 3451 阅读 · 2 评论 -
c#检测端口是否被占用
但是本机一个端口只能一个程序监听,所以我们进行本地监听的时候需要检测端口是否被占用。 命名空间System.Net.NetworkInformation下定义了一个名为IPGlobalProperties的类,我们使用这个类可以获取所有的监听连接,然后判断端口是否被占用,代码如下:public static bool PortInUse(int port){ bool inUse = false; IPGlobalProperties ipProperties =...原创 2020-12-26 11:04:46 · 2442 阅读 · 0 评论 -
c#操作mysql
C#操作mysql需要添加相应版本的MySql.Data.dll引用MysqlBase.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;using MySql.Data.MySqlClient;using System.Data; namespace 一键配置工具{ class MysqlBase { private MySqlCo原创 2020-12-23 14:33:17 · 1829 阅读 · 0 评论 -
C#配置文件操作】程序配置文件App.Config操作
简介:App.Config文件操作类说明:今天分享一个自开发来一直在用的配置文件操作类,用于读取和修改App.config的程序配置使用方法:获取指定配置的值:ConfigHelper.GetAppConfig("配置名称");修改指定配置的值:ConfigHelper.UpdateAppConfig("配置名称","新数据");教程代码:创建类时先引用:System.Configurationusing System.Collections.Generic...原创 2020-11-21 18:34:28 · 625 阅读 · 0 评论 -
c# 判断一个字符串是否包含另一个字符串
C#开发过程中针对字符串String类型的操作是常见操作,有时候需要判断某个字符串是否包含在另一个字符串,此时可以使用IndexOf方法以及Contain方法来实现此功能,Contain方法返回True和False,而IndexOf方法可以返回所在的索引位置,如果为查找到对应的字符串,则返回-1。C#中字符串IndexOf方法的使用格式为:StringA.IndexOf(StringB)。StringA表示被查找的字符串,StringB则表示需要查找的目标字符串。如果存在则返回所在的索引开始位置,否则返原创 2020-11-16 17:55:33 · 13429 阅读 · 2 评论 -
C# 判断文件夹与文件是否存在
//在上传文件时经常要判断文件夹是否存在,如果存在就上传文件,否则新建文件夹再上传文件判断语句为if (System.IO.Directory.Exists(Server.MapPath("file")) == false)//如果不存在就创建file文件夹{ System.IO.Directory.CreateDirectory(Server.MapPath("file"));}System.IO.Directory.Delete(Server.MapPath("file"),true);.原创 2020-11-14 18:57:47 · 597 阅读 · 0 评论 -
C#除法的取整
在c#中除数取整使用的是:5%2 =3另外还有以下的方法:Math.Round:四舍六入五取整Math.Ceiling:向上取整,只要有小数都加1Math.Floor:向下取整,总是舍去小数 使用的时候,说函数具有二义性。所以使用如下:(int)Math.Ceiling((double)xor/12);Xor/12取整还是double型是具有二义性的...原创 2020-11-14 18:21:42 · 19501 阅读 · 3 评论 -
C# 获取窗体的句柄和获取窗体中的空间
获取窗体的句柄FindWindow,用来根据类名和窗口名来得到窗口句柄。但是这个函数不能查找子窗口,也不区分大小写。如果要从一个窗口的子窗口中查找需要使用的FindWindowEX。1.在C#中使用方法如下: [DllImport("User32.dll",EntryPoint="FindWindow")] private static extern IntPtr FindWindow(string lpClassName,string lpWindowName); I原创 2020-11-04 00:52:44 · 5807 阅读 · 0 评论 -
C# 模拟鼠标移动与点击
我们需要用到的mouse_event函数,位于user32.dll这个库文件里面,所以我们要先声明引用。[System.Runtime.InteropServices.DllImport("user32")] private static extern int mouse_event(int dwFlags, int dx, int dy, int cButtons, int dwExtraInfo); //移动鼠标 const int MOUSEEVENTF_MOVE = 0x0001;原创 2020-11-04 00:50:28 · 1350 阅读 · 0 评论 -
c# 如何判断当前窗体是否打开
using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace WindowsFormsApplication3{ public partial class Form1 : Form { public static string username; public Form2 form2 = null; //定义窗体 pub.原创 2020-10-30 23:38:42 · 3679 阅读 · 0 评论 -
C#如何定义全局变量
在实际的操作过程中经常会遇到,Form1中的变量需要传入Form2,或者控件中的值需要传入另外一个窗体,这是只需要定义一个全局变量就可以了(1)定义全局变量public partial class Form1 : Form { public static string CardNo; //注意全局变量要使用static public static string UserName; }(2)给全局变量赋值UserName =Convert.原创 2020-10-30 22:57:29 · 11265 阅读 · 0 评论 -
C# 全局变量的实现
C# 应用程序中,如果要记录登陆用户的用户名、用户等级、用户IP地址等等,或者要记录应用程序的异常情况(如应用程序所在主机无法联网,我们必须把这一状态记录下来以备后续处理;又如应用程序抛出某个路径无法找到的异常,提醒用户进行重新配置,如果用户选择忽略该异常,那么后面再碰到该异常时,应用程序应该直接忽略而不是频繁地提醒用户),这时,我们需要使用到全局变量。就跟ASP网站中登陆后使用SESSION,COOKIE的原理是一样的。在C/C++中,全局变量是一种可以在程序任何位置上都可以使用的变量,那么C#中有没原创 2020-10-30 22:43:52 · 3035 阅读 · 0 评论 -
C#使用Selenium
介绍:Selenium 是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。利用它可以驱动浏览器执行特定的动作,如点击、下拉等操作,同时还可以获取浏览器当前呈现的页面的源代码,做到可见即可爬。所以Selenium现在被广泛用于Python爬虫。查了下资料,发现这个工具确实强大,最重要的是,C#...转载 2020-10-29 19:35:44 · 6345 阅读 · 1 评论 -
C#多行注释
最近在使用VS2015开发ASP.NET,突然发现想全部注释时找不到注释的快捷键,一开始我以为和其他语言差不多,后来用到才真心明白网上查了下,原来很简单,只是需要使用组合键。事无巨细,多积累才是王道,贴出来给大家分享一下注释 :先CTRL+K,然后CTRL+C取消注释: 先CTRL+K,然后CTRL+U...原创 2020-10-26 11:05:21 · 4101 阅读 · 0 评论 -
c#连接mysql数据库
习惯了MYSQL数据库,回到WINDOWS中开发数据库的反倒不习惯了。在网上看了些方法作下笔记:1、要连接MySql数据库必须首先下载MySql官方的连接.net的文件,文件下载地址为http://dev.mysql.com/downloads/connector/net/6.6.html#downloads,下载平台选择.Net&Mono,下载ZIP免安装版。2、解压缩刚才下载的mysql-connector-net-6.6.6-noinstall.zip文件,里面有几个版本选择,在这里我.原创 2020-09-07 22:19:55 · 273 阅读 · 0 评论 -
C#程序退出的几种方法
方法一:this.Close(); //只是关闭当前窗口,若不是主窗体的话,是无法退出程序的,另外若有托管线程(非主线程),也无法干净地退出; 方法二:Application.Exit(); //强制所有消息中止,退出所有的窗体,但是若有托管线程(非主线程),也无法干净地退出; 方法三:Application.ExitThread(); //强制中止调用线程上的所有消息,同样面临其它线程无法正确退出的问题; 方法四:System.Environment...原创 2020-09-07 22:15:23 · 2405 阅读 · 0 评论