C#
bejingcode
这个作者很懒,什么都没留下…
展开
-
CRC8(封装),可直接使用
public class CRC8 { private static readonly object obj = new object(); private static CRC8 cRC8 = null; public static CRC8 Instance() { if (cRC8 == null) { lock (obj)...原创 2021-10-25 17:06:06 · 370 阅读 · 0 评论 -
CRC8(循环冗余校验)
最近由于要做一个串口控制类的上位机程序,需要用CRC校验发送和接收的数据,于是上网搜相关内容,发现此类文章并不多,都是互相抄袭,没有自己的想法,我于是就自己仔细思考和实验了一下,发现并不难实现。CRC的原理:不准确的说就是用数据包除以CRC多项式。数据包不用说了,CRC多项式是什么呢?CRC多项式就是一个8bit的数,要求最高位是1,因此CRC16的CRC多项式就是16bit,CRC32的CRC多项式就是32bit。那么怎么除呢?就是把数据包和CRC多项式按位异或,一直异或到最后一位,最后结果就转载 2021-10-25 16:09:52 · 2700 阅读 · 0 评论 -
Basler相机调用及图像存储
使用方式SDK,工程直接引用Basler.Pylon.dll调用步骤://实例化相机Camera camera = new Camera();//打开相机camera.Open();//开始图像抓取camera.StreamGrabber.Start();//获取抓取结果IGrabResult grabResult = camera.StreamGrabber.RetrieveResult(5000, TimeoutHandling.ThrowException);原创 2021-09-07 17:30:59 · 1394 阅读 · 1 评论 -
字符串与数组的相互转换
string str = "1,2,3,4,5,6,7";string[] strArray = str.Split(','); //字符串转数组str = string.Empty;str = string.Join(",", strArray);//数组转成字符串原创 2021-05-19 08:56:23 · 123 阅读 · 0 评论 -
获取CPU序列号
//1.获取CPU序列号代码 static string GetCpuID() { try { string cpuInfo = "";//cpu序列号 ManagementClass mc = new ManagementClass("Win32_Processor"); ManagementObjectCollection moc = mc.GetInstances();...原创 2021-03-22 10:26:01 · 1558 阅读 · 0 评论 -
时间格式转化
public static string TimeFormatConvert(int time) { string str = "0"; if (time < 0) { time = Math.Abs(time); TimeSpan ts = new TimeSpan(0, 0, time); str = $"-{ts.原创 2020-06-16 16:21:37 · 198 阅读 · 0 评论 -
C#操作Redis
前提在安装Redis的情况下,不在赘述,上代码NuGet引用Redis、StackExchange.Redis封装类:using ServiceStack.Redis;using System;using System.CodeDom;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace RedisTest{原创 2020-06-07 17:14:46 · 621 阅读 · 0 评论 -
VS2017修改resource之后产生designer1.cs
1. 卸载项目2. 编辑项目文件3. 搜索<LastGenOutput>resources1.Designer.cs</LastGenOutput>4.更改为<LastGenOutput>resources.Designer.cs</LastGenOutput>5. 删除resources.designer.cs和resources1.des...原创 2020-03-25 12:32:34 · 931 阅读 · 0 评论 -
js正则表达式转换成C#正则表达式的网站
这两天用到正则表达式,因为正则表达式基本上都是在js处理,而我的程序需要在c#里面处理,但是js跟C#又有点区别,但是我们有一个非常好的网站可以自动将js正则表达式转换成c#的正则表达式,网站链接为http://regex.zjmainstay.cn/...转载 2019-10-16 15:40:23 · 462 阅读 · 0 评论 -
C#常用代码总结
1 【字号:大 小】 2 3一、从控制台读取东西代码片断: 4using System; 5 6class TestReadConsole 7{ 8 public static void Main() 9 { 10 Console.Write(Enter your name:); 11 string strName = Console....转载 2018-05-02 11:48:44 · 537 阅读 · 0 评论 -
C# 字符串转json对象
引用Newtonsoft.Json.dllstring reStr={message:"123"}; JObject jo = (JObject)JsonConvert.DeserializeObject(retStr); string mes = jo["message"].ToString();原创 2018-04-28 12:35:09 · 11801 阅读 · 0 评论 -
VS2015发布时提示未找到signtool.exe如何解决
项目属性->签名->ClickOnce清单签名不勾选原创 2018-04-28 16:22:43 · 10176 阅读 · 2 评论 -
队列并发访问
最近在做一个项目,涉及到队列并发访问的问题,最后通过.net4.0中的Concurrent得以解决。使用该引用之前,先安装.net4.0.应用举例:using System.Collections.Concurrent;ConcurrentQueue<string> queue = new ConcurrentQueue<string>();//存储队列实例化queue.E...原创 2018-05-28 11:05:27 · 686 阅读 · 0 评论 -
Socket服务端创建以及客户端与服务端连接的应用举例
//创建Socket服务bool CreateServer(){ try{ //创建负责监听的套接字,注意其中的参数 socketServer = new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp); //获取文本框中的IP对象 IPAddress address = IPA...原创 2018-05-28 12:15:01 · 1203 阅读 · 0 评论 -
File类和FileInfo类来演示如何移动文件
void MoveFile1() { string fileToMove = @"c:\temp\New Text Document.txt"; string fileNewDestination = @"c:\temp\test.txt"; if (File.Exists(fileToMove) && !File.Exists...转载 2018-10-03 16:22:05 · 799 阅读 · 0 评论 -
C# 正则表达式应用
正则表达式平时不常用,经常都是用的时候,临时抱佛脚,查文档,然后就是被各种坑之后,才会逐渐熟练。在线正则表达式测试:http://tool.oschina.net/regex/在线JSON格式化:https://www.bejson.com/正则表达式手册:http://tool.oschina.net/uploads/apidocs/jquery/regexp.html...原创 2018-10-23 15:52:18 · 311 阅读 · 0 评论 -
C#之Action和Func的用法
以前我都是通过定义一个delegate来写委托的,但是最近看一些外国人写的源码都是用action和func方式来写,当时感觉对这很陌生所以看起源码也觉得陌生,所以我就花费时间来学习下这两种方式,然后发现确实代码简洁了不少。这两种方式我们也可以去实践的过程去慢慢运用。先说一下委托:模拟一下场景:小明最近学习情绪高涨,以前买的书已经满足不了欲望,打算去买本(一个程序员的自我修养)。可是呢以前总...转载 2019-01-31 10:09:52 · 224 阅读 · 0 评论 -
T4模板
将该代码复制到新建的文本模板,将连接字符串改成自己要生成实体类的数据库,保存即可生成所选数据库的实体类集合<#@ template language="C#" debug="True" hostspecific="True" #><#@ assembly name="System.Data" #><#@ assembly name="System.xml" #...原创 2019-04-11 18:42:02 · 711 阅读 · 0 评论 -
C#中 ??、 ?、 ?: 、?.、?[ ]
1. 可空类型修饰符(?)引用类型可以使用空引用表示一个不存在的值,而值类型通常不能表示为空。 例如:string str=null; 是正确的,int i=null; 编译器就会报错。 为了使值类型也可为空,就可以使用可空类型,即用可空类型修饰符"?"来表示,表现形式为"T?" 例如:int? 表示可空的整形,DateTime? 表示可为空的时间。 T? 其实是System.Null...转载 2019-07-15 14:13:50 · 2753 阅读 · 0 评论 -
使用C#创建windows服务
前言:前段时间因为项目上需要用到实现一个简答的卫星云图播放功能,因此需要将卫星云图实时下载到本地目录。当时也没多想,直接就用控制台程序开发了一个卫星云图自动下载工具。最近项目不是很忙了,静下心重新看了一下项目代码,对部分代码进行了重构......同时也发现了卫星云图下载工具的问题,总不能每次客户使用的时候都让客户去跑一遍控制台程序或者一直运行这个控制台程序吧。于是打算把卫星云图下载工具写成...转载 2019-07-17 16:45:33 · 460 阅读 · 0 评论 -
Fleck实现简单的Websocket
服务端:using Fleck;using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace GoWebSocket{ class Program { static v...原创 2019-08-27 09:17:19 · 4088 阅读 · 0 评论 -
文件压缩为zip--C#
一个比较好用的插件,跟大家分享一下。using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.IO;using System.Diagnostics;using ICSharpCode.SharpZipLib;using ICSharpCode.Sharp原创 2016-10-20 18:58:41 · 629 阅读 · 0 评论 -
Winfrom DataGridView grvData_CellContentClick的应用
private void grvData_CellContentClick(object sender, DataGridViewCellEventArgs e) { if (e.RowIndex >= 0) { DataGridViewColumn column = grvData.Colum原创 2017-10-24 10:17:38 · 322 阅读 · 0 评论 -
C# 调用wav文件播放音乐
using System.Media;SoundPlayer spsuceed = new SoundPlayer(Application.StartupPath + "/" + wav);spsuceed.LoadAsync();spsuceed.PlaySync();原创 2017-09-01 11:36:43 · 1016 阅读 · 0 评论 -
C#调用触摸屏小键盘
//启动触摸键盘 if (File.Exists(MainModel.ServerPath + @"osk.exe"))//系统小键盘exe文件路径 { System.Diagnostics.Process.Start(MainModel.ServerPath + @"osk.exe");原创 2017-08-29 11:22:46 · 6054 阅读 · 0 评论 -
C# System.Guid.NewGuid()
概念GUID: 即Globally Unique Identifier(全球唯一标识符) 也称作 UUID(Universally Unique IDentifier) 。 GUID是一个通过特定算法产生的二进制长度为128位的数字标识符,用于指示产品的唯一性。GUID 主要用于在拥有多个节点、多台计算机的网络或系统中,分配必须具有唯一性的标识符。 在 Windows 平台上,GUID 广泛应用于转载 2017-01-12 09:36:34 · 647 阅读 · 0 评论 -
C#和sqlserver中生成新的32位GUID
C#中用Guid.NewGuid().ToString()Sql中用NEWID()以上方法生成的是36位的GUID,如果需要转换成32位,则需要替换掉其中的’-‘字符。Sql中的方法:replace(newid(), ‘-‘, ”) GUID(全局统一标识符)是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。通常平台会提供生成GUID的API。生成算法很有意思,用到了以太网卡地转载 2016-12-22 17:27:08 · 660 阅读 · 0 评论 -
DateTime与yyyy-MM-dd HH:mm格式的字符串相互转换
string curtime = DateTime.Now.ToString("yyyy-MM-dd HH:mm"); string endtime = couponDefine.EndDateTime; DateTime dtcur = DateTime.ParseExact(curtime, "yyyy-MM-dd HH:mm", null); DateTime dtend = Da原创 2016-11-24 11:41:09 · 3859 阅读 · 0 评论 -
MemoryStream 转 pdf
在项目开发中用到将MemoryStream 转pdf,在转化过程中需要建了一个.dom格式的模板,先保存为.doc文件,然后再转换为.pdf。有一个插件感觉好不错,给大家推荐一下。重点内容using System;using System.Collections.Generic;using System.Linq;using System.Text;using Microsoft.Offic原创 2016-10-20 19:20:25 · 3381 阅读 · 0 评论 -
生成二维码方法----C#
string enCode = Url + tid + “?taskId=” + taskId;//二维码内容 var qrCodeEncoder = new QRCodeEncoder(); qrCodeEncoder.QRCodeScale = 10;//每个小方格的宽度 qrCodeEncoder.QRCodeVersion = 7;//二维码版本号 Bitmap bt = qrCod原创 2016-10-20 17:47:22 · 521 阅读 · 0 评论 -
C#引用Office.word出错的解决办法
1、系统找不到 Microsoft.Office.Interop.Word”"Could not load file or assembly 'Microsoft.Office.Interop.Word, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c' or one of its dependencies."系统原创 2016-10-25 10:19:07 · 1228 阅读 · 0 评论 -
利用itextsharp生成pdf并生成zip文件及其邮件发送
在最近的一个项目中有一个下载的业务需求。下面代码实现了生成pdf以zip格式形式进行压缩处理最后将zip邮件发送,一下代码仅供参考,大家有什么好的意见,我们可以交流一下。 ZipOutputStream zipOutputStream; using (MemoryStream ms = new MemoryStream()) {原创 2016-11-04 17:27:10 · 851 阅读 · 0 评论 -
C#后台判断客户端是否为电脑端
针对C#后台判断客户端是否为电脑端,这个方法还是比较好用的。 public static bool IsMobileRequest(HttpRequestBase request) { string uAgent = request.ServerVariables["HTTP_USER_AGENT"]; string[] mobileA原创 2016-10-24 17:54:52 · 2931 阅读 · 0 评论 -
将数据序列化有什么作用
1.序列化是什么:序列化就是将一个对象的状态(各个属性量)保存起来,然后在适当的时候再获得。序列化分为两大部分:序列化和反序列化。序列化是这个过程的第一部分,将数据分解成字节流,以便存储在文件中或在网络上传输。反序列化就是打开字节流并重构对象。对象序列化不仅要将基本数据类型转换成字节表示,有时还要恢复数据。恢复数据要求有恢复数据的对象实例。序列化有什么特点:如果某个类能够被序列化原创 2017-02-14 10:24:11 · 5340 阅读 · 2 评论 -
C#去掉字符串中的<p>标签
Regex reg = new Regex(@"(?is)(?).*?(?=)", RegexOptions.IgnoreCase); string content = reg.Match("此处传字符串值").Value;原创 2017-04-19 14:57:27 · 1301 阅读 · 0 评论 -
C#读取txt文档并上传至数据库,将上传的数据逐行删除
DirectoryInfo di = new DirectoryInfo(AppDomain.CurrentDomain.BaseDirectory + "Log\\");//获取根目录信息 List data = new List(); foreach (var fi in di.GetFiles("*.log", SearchOption.A原创 2017-08-24 09:16:11 · 987 阅读 · 0 评论 -
.net 操作sftp服务器
1: using System; 2: using System.Collections.Generic; 3: using System.Linq; 4: using System.Text; 5: using System.Collections.Specialized; 6: using System.Configuration;转载 2017-09-04 09:49:05 · 2413 阅读 · 0 评论 -
Winfrom控件属性、布局
1.GroupBox优先级大于Panel2.Anchor设置控件与窗体的相对位置3.RowHeadersVisible控制DataGridView左侧黑点是否显示原创 2017-08-13 18:34:39 · 365 阅读 · 0 评论 -
进程互斥问题
最近做的项目中,需要用到进程互斥,一个程序运行时,另一个程序禁止执行。Process[] process = Process.GetProcesses(); bool isok = true; foreach (Process item in process) { if (i原创 2017-05-22 15:04:49 · 508 阅读 · 0 评论 -
VS2015激活 密钥
专业版:HMGNV-WCYXV-X7G9W-YCX63-B98R2企业版:HM6NR-QXX7C-DFW2Y-8B82K-WTYJV原创 2017-06-17 10:05:36 · 181782 阅读 · 106 评论