![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C#
文章平均质量分 66
天马3798
济南小程序开发,济南网站开发,线上引流过客;济南.net 开发,济南C#开发,济南nodejs开发
展开
-
C# IO FileStream流(一)使用整理
来自其他开发者的整理:文件操作常用相关类二、其他。原创 2023-07-22 15:01:33 · 487 阅读 · 0 评论 -
C# IO Stream 流(三)基类整理
所以经常会出现这样的情景:流的长度是100,给了长度为100的缓存字节数组,然后第一次读取了10个字节,第二次读取了5个字节,这样一点一点的把这100个字节读取到。这就是因为Excel打开了这个文件,就持有一个文件相关的流,所以QQ无法发送。C#中,所有流都是继承自Stream类,Stream类定义了流应该具有的行为和属性,使得开发人员可以忽略底层的操作系统和基础设备的具体细节。当Stream对象的CanSeek为true时,也就是流支持搜索的时候,可以通过这个属性确认流的长度,也就是有多少个字节的数据。原创 2023-07-22 14:55:44 · 582 阅读 · 0 评论 -
C# 枚举使用整理_C# enum详解
System.Enum 类型是所有枚举类型的抽象基类。它提供多种方法来获取有关枚举类型及其值的信息。有关更多信息和示例,请参阅 System.Enum API 参考页。可在基类约束中使用 System.Enum(称为枚举约束),以指定类型参数为枚举类型。所有枚举类型也都满足 struct 约束,此约束用于指定类型参数为。它允许使用描述性的名称表示整数值。有助于确保给变量指定合法的、期望的值。可以显式指定任何其他整数数值类型作为枚举类型的基础类型。默认情况下,枚举成员的关联常数值为类型 int;原创 2023-07-15 16:55:31 · 1745 阅读 · 0 评论 -
C# 去除字符串中的空格方案整理
(匹配任何空白字符,包括空格,制表符,换页符等,与[\f\n\t\r\v]等效)可以去掉字符串中 所有 的空格。去掉字符串 前后 的空格。四、完善中.....原创 2023-06-11 15:31:35 · 13182 阅读 · 0 评论 -
.Net内存管理基础知识
托管堆不同于堆,它是由CLR(公共语言运行库(Common Language Runtime))管理,当堆中满了之后,会自动清理堆中的垃圾。所以,做为.net开发,我们不需要关心内存释放的问题。堆栈:是一种后进先出的数据结构,它是一个概念,栈是一种后进先出的数据结构。栈区:存放函数的参数、局部变量、返回数据等值,由编译器自动释放。堆区:存放着引用类型的对象,由CLR释放。②内存堆栈:存在内存中的两个存储区(堆区,栈区)。原创 2023-05-30 15:47:36 · 317 阅读 · 0 评论 -
C#时间使用整理,DateTime 使用整理
四、C#时间点字符串转换。原创 2023-05-27 15:16:04 · 1266 阅读 · 0 评论 -
C# 反射(二)操作属性PropertyInfo
一、C# 反射 类操作 1.方式12.方式2二、C# 反射 属性操作PropertyInfo1. 获取属性2. 设置属性的值 setvalue更多:原创 2022-12-03 17:04:22 · 801 阅读 · 0 评论 -
C# 反射(一)基础概念
一、C# 反射(refection)基础概念反射指程序可以访问、检测和修改它本身状态或行为的一种能力。程序集包含模块,而模块包含类型,类型又包含成员。反射则提供了封装程序集、模块和类型的对象。您可以使用反射动态地创建类型的实例,将类型绑定到现有对象,或从现有对象中获取类型。然后,可以调用类型的方法或访问其字段和属性。优点:缺点:二、C# 反射的使用场景三、C# 反射获取类型方式1.类型:Type2.成员:MethodInfo ,方法,字段,属性成员字段:FieldInfo 成员属性:PropertyI原创 2022-12-03 16:57:34 · 1349 阅读 · 0 评论 -
C# 合并对象_C# 对象合并整理
将对象source属性合并到target上。2.对象合并忽略id属性处理。原创 2022-10-05 18:52:16 · 1349 阅读 · 0 评论 -
C# IO Stream 流(二)扩展类_封装器
一、C# IO Stream 流扩展类C#包括以下标准IO(输入/输出)类,可从不同的源(例如文件,内存,网络,隔离存储等)进行读取/写入。流(Stream): System.IO.Stream 是一个抽象类,提供了将字节(读,写等)传输到源的标准方法。就像包装器类一样传输字节。需要从特定源读取/写入字节的类必须实现Stream类。以下类继承Stream类,以提供从特定源读取/写入字节的功能:FileStream:从物理文件读取字节或向物理文件写入字节,无论它是.txt,.exe,.jpg还是任何其他文件。原创 2022-06-24 14:20:06 · 629 阅读 · 0 评论 -
C# IO Stream 流(一)基础概念_基本定义
一、C# Stream 流基础概念概念:提供了字节序列的通用视图,是一个抽象类。数据流(Stream)是对串行传输的一种抽象表示,是对输入/输出的一种抽象。数据有来源和目的地,衔接两者的就是串流对象。流具有如下3种基本操作:写入:将数据从内存缓冲区传输到外部源;读取:将数据从外部源传输到内存缓冲区;查找:重新设置流的当前位置,以便随机读写。但并不是所有的流类型都支持查找,如网络流类没有当前位置的概念,就不支持查找。二、C# Stream 流基本定义,常用属性和方法Stream是虚拟类,它以及它的派生类都原创 2022-06-24 14:12:51 · 1433 阅读 · 0 评论 -
C#数组分组_C#数据分组_C# Linq分组使用整理
C#数组分组_C#数据分组_C# Linq分组使用整理一、C# 数组分组,数据分组--自己写算法处理1.数字数组分组//[1,3,5,3,5,7,8,5,1,1]//1,3,5,7,8//3,1,3,1,1/// <summary>/// 使用 循环,自己分组---》语言的基础逻辑,基础算反/// </summary>public static void Test1(){ int[] numbers = new int[] { 1,5, 3, 5,原创 2022-04-26 16:39:04 · 3623 阅读 · 0 评论 -
C# 中的可用类型_不可用类型_C#双问号_C#问号点_C# null不等于
C# 中的可用类型_不可用类型_C# ??_C#?._C# null!一、可空类型 Nullable当我们讨论到 null 安全性时,一个变量可以有两种状态:Nullable : 可以为 null。 Non-Nullable :不可以为 null。从 C# 8.0 开始,所有的引用类型默认都是 Non-nullable。“可空性”可以通过以下两个新的类型运算符进行修改:! :从 Nullable 改为 Non-Nullable ? :从 Non-Nullable 改为 Nullab原创 2022-02-06 16:13:42 · 1225 阅读 · 0 评论 -
C# 数据类型、变量、作用域
一、C# 数据类型结构C# 数据类型分类:值类型:简单类型:整数类型、浮点类型,布尔类型、字符类型; 符合类型:枚举类型、结构体类型引用类型:数组、类、接口、委托,object,string说明:值类型变量,存的是值;引用类型变量,存引用,指向对空间的对象。数据机构堆栈:托管堆不同于堆,它是由CLR(公共语言运行库(Common Language Runtime))管理,当堆中满了之后,会自动清理堆中的垃圾。所以,做为.net开发,我们不需要关心内存释放的问题。①数据原创 2021-07-31 10:07:53 · 906 阅读 · 0 评论 -
C# 泛型讲解_泛型基础_C# Generic
C# 泛型讲解_泛型基础一、C# 泛型概念简介:泛型是.NET Framework2.0新增的一个特性,在命名空间System.Collections.Generic,包含了几个新的基于泛型的集合类,官方建议.net 2.0 及更高版本的应用程序使用心得泛型集合类,而不使用非泛型集合类,例如ArrayList。官方解释:泛型是程序设计语言的一种特性。允许程序员在强类型程序设计语言中编写代码时定义一些可变部分,那些部分在使用前必须作出指明。各种程序设计语言和其编译器、运行环境对泛型的支持均不原创 2021-07-10 10:30:18 · 1200 阅读 · 0 评论 -
拉姆达表达式/Lambda表达式/lambda expression 使用整理
一、Lamabda表达式定义二、Lamabda表达式语法三、C# 中Lamabda使用场景四、J原创 2021-06-17 16:00:10 · 8584 阅读 · 0 评论 -
C#实现微信AES-128-CBC加密数据的解密
1.微信小程序登录获取用户的openid信息需要使用AES-128-CBC解密处理 /// <summary> /// ASE加解密 /// </summary> public class AESHelper { /// <summary> /// 秘钥 /// </su...原创 2018-03-21 12:41:28 · 5539 阅读 · 0 评论 -
iis提示“另一个程序正在使用此文件,进程无法访问。(异常来自HRESULT:0x80070020) ”解决办法
iis提示“另一个程序正在使用此文件,进程无法访问。(异常来自HRESULT:0x80070020) ”解决办法今天在做服务器测试的时候意外发生IIS的默认网站启不来,尝试启动的时候得到如何错误,如下图:很明显,80或是443端口已被另一个程序占用,所以发生此错误。解决此问题得找到哪个程序占用掉80或是443端口,注:对于443端口,SVN很多时候回占用 这个端口方法如下:1、 打开CMD DOS...原创 2018-03-21 20:21:23 · 29602 阅读 · 7 评论 -
C# 委托、事件、回调 讲解
一、C# 委托、事件、回调 基础概念1.委托是C#中实现事件、回调的基础2.二、原创 2021-06-05 13:58:56 · 2339 阅读 · 2 评论 -
C# 4个方位修饰符和8个声明修饰符详解
一、访问修饰符 (添加到类、结构或者成员声明的关键词,控制访问权限)4个方位修饰符1.Private:私有的,是一个成员访问修饰符。只有在声明它们的类和结构中才可以访问。 注:类或者成员默认的访问权限。2.Public:公有的,是类型和类型成员的访问修饰符。对其访问没有限制。3.Internal:内部的,是类型和类型成员的访问修饰符。同一个程序集中的所有类都可以访问4. Protected:受保护的,是一个成员访问修饰符。只能在它的类和它的派生类中访问。5.protec...转载 2021-04-10 12:12:42 · 847 阅读 · 0 评论 -
C# 匿名函数_C# 匿名函数使用整理
一、C# 匿名函数简介匿名方法:没有名字的方法,不需要名字的方法。匿名方法是没有名称只有主体的方法。匿名方法和委托搭载使用。匿名方法 精确点可以改叫 匿名函数。委托是用于引用与其具有相同标签的方法。换句话说,您可以使用委托对象调用可由委托引用的方法。匿名方法(Anonymous methods)提供了一种传递代码块作为委托参数的技术。在匿名方法中您不需要指定返回类型,它是从方法主体内的 return 语句推断的。二、 C# 匿名函数使用场景1. delegate ..原创 2021-02-06 10:55:24 · 11376 阅读 · 0 评论 -
C# 匿名对象_C#匿名类型_C# 匿名对象使用整理
一、C# 匿名对象概念匿名类:没有命名的类,不需要定义,也是继承自object。匿名对象:new 出来的匿名类的对象,没有固定类型的对象。变量声明,必须指定类型,没有指名类型就是匿名类型。所有的对象继承自object类,也可以说是object类型。语法规则:new { ID=1,Name=""}二、C# 匿名对象的使用场景1.使用object 声明object student2 = new{ ID = 2, Name = "李四", Age =原创 2021-02-06 10:39:11 · 2963 阅读 · 2 评论 -
C# 数组_C#动态数组详解整理
一、C# 数组 Array简介namespace System public abstract class ArrayArray 类 (抽象类) 是C#中所有数组的基类,在System命名空间下。使用如下: int[] nums = new int[] {1,2,3 };Array 中定义的常用属性Length -- 数组个数Rank---数组纬度LongLength---多维度数组中,数据总个数。Array 中定义的方法实例方法:下标访问数组..原创 2021-01-30 14:55:03 · 8575 阅读 · 9 评论 -
DotNet 开发项目类型整理_C#开发项目类型整理
DotNet 开发项目类型整理_C#开发项目类型整理DotNet 开发使用的主要开发工具 Visual Studio,Visual Studio Code.net core开始支持跨平台,跨系统。.net 5.0 开始讲.net framework / .net core合并为一。一、C#开发CS 应用1.C#开发控制台应用程序学习C#语法常用模式,开发服务或者不需要交互性的引用。2.C#开发WinFrom桌面应用程序Windows应用开发,成熟,简单,方便。3.C#开发原创 2021-01-09 10:21:29 · 1261 阅读 · 2 评论 -
C#面向对象_C#面向对象开发开发整理
C#面向对象_C#面向对象开发开发整理一.静态和实例C#面向对象_静态和实例,静态类和实例类,静态成员和实例成员二.封装1.方法封装:形参、实参概。ref,out 基础类型参数外部同步。成员封装: get;set 访问器使用2.类封装,接口封装三.继承四.多态更多:C# 字符串格式化_C# 字符串格式化整理C# 字符串拼接整理_C#字符串拼接方式整理C# 项目结构整理_.Net 项目结构整理...原创 2020-12-19 15:43:15 · 859 阅读 · 5 评论 -
C#面向对象_静态和实例,静态类和实例类,静态成员和实例成员
一、C#静态和实例概念静态概念:公共的、全局的、不属于个别实例的定义。实例概念:new 出来的具体单个对象。随着作用域定义,使用,销毁(多数实例,通过垃圾回收机制自动销毁)。静态 实例 关键字static修饰类或方法 不能使用static修饰类或方法 修饰后类直接调用 需要先实例化对象,用对象调用 静态只会执行调用一次,并且在程序退出之前会一直保持状态,占领内存 实例化一次调用一次 先执行静态方法 后执行实例方法 二、C#静态类和实例类.原创 2020-12-12 14:23:04 · 7117 阅读 · 5 评论 -
C# 字符串格式化_C# 字符串格式化整理
一、C# 字符串格式化_C# 字符串格式化整理使用方式1: xxx.ToString(xxxx)使用方式2:string.Format(xxxx,xxx)1、占位符格式化零占位符:固定位数,不足补充0数字占位符:最小化数字展示,“##”格式字符串使得值被舍入到小数点前最近的数字,其中零总被舍去。空格占位符string.Format("{0,-50}", theObj);//格式化成50个字符,原字符左对齐,不足则补空格string.Format("{0,50}", theO..原创 2020-11-28 17:14:02 · 19818 阅读 · 0 评论 -
C# 字符串拼接整理_C#字符串拼接方式整理
C# 字符串拼接整理_C#字符串拼接方式整理一、字符串连接使用+注意:此方式多种语言通用,js,java中都可以如此操作string hello = "Hello";string world = "World";string result = hello+" "+ world+"!";二、StringBuilder,字符串拼接专用,性能搞,可以自定义缓存区大小StringBuilder builder = new StringBuilder();for (int ...原创 2020-11-28 15:54:03 · 6264 阅读 · 4 评论 -
C# 项目结构整理_.Net 项目结构整理
一、C# 项目结构和基础概念一、解决方案:解决方案文件:*.sln 文件*.sln 文件中含有的内容:1.开发工具的版本,最低版本2.当前解决方案中含有的项目,以及项目的id,项目名称,项目文件路径3.含有项目的发布调试编译方式定义解决方案是对一个需求的完整处理方式,中含有多个项目,多个类库。双击sln文件即可使用VS开发工具打开。解决方案:可以添加创建项目,可以添加现有的项目,引用代码。二、项目:项目文件 : *.csproj 文件*.csproj 文.原创 2020-11-28 15:31:59 · 10838 阅读 · 1 评论 -
C#中float, double的计算存在精度问题
一、C#中float, double的计算存在精度问题 //Linq Sum() 求和存在精确度误差 //应当计算结果10,实际结算结果9.999999999999998 double[] array3 = new double[] { 3.97,2.82,1.66,0.1,1.45 }; Console.WriteLine(array3.Sum()); double sum = 0; for (int i = 0; i <原创 2020-09-11 12:08:31 · 5587 阅读 · 0 评论 -
C#如何获取今天零点的时间
一、获取今天0点的时间DateTime today1 = DateTime.Now.Date;Console.WriteLine(today1);// 2019/3/5 0:00:00DateTime now = DateTime.Now;DateTime today2 = new DateTime(now.Year, now.Month, now.Day);Console.Wri...原创 2019-03-05 09:55:45 · 26982 阅读 · 0 评论 -
C#获取文件信息
1.获取文件简单信息使用System.IO.FileInfo类获取:using System.IO;FileInfo fi = new FileInfo( yourFileName );public DirectoryInfo Directory { get; }public string DirectoryName { get; }public override bool Ex原创 2016-08-09 20:43:44 · 3202 阅读 · 2 评论 -
C#操作时间戳
1. 什么是时间戳首先要清楚JavaScript与Unix的时间戳的区别:JavaScript时间戳:是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总毫秒数。Unix时间戳:是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。可以看...原创 2019-05-31 14:44:49 · 12321 阅读 · 0 评论 -
C#计算两个经纬度的距离
一、C#计算两个经纬度的距离//地球半径,单位米 private const double EARTH_RADIUS = 6378137; /// <summary> /// 计算两点位置的距离,返回两点的距离,单位 米 /// 该公式为GOOGLE提供,误差小于0.2米 /// </summary>...转载 2019-06-14 10:37:35 · 7384 阅读 · 5 评论 -
C#默认编码、ASCII,Unicode
一、C#默认编码C# 的所有源代码文件,默认编码为 UTF-8,注意,是源代码文件,而不是 C# 中的 string。C# 中的所有 string,默认编码均为 Unicode (UTF-16)。C# 产生的 ASP.NET 源代码,如 ASPX/CS,在浏览器响应回去客户端之后,编码默认为 UTF-8。可以通过ContentType 请求头信息更改默认编码。比如:ContentTy...原创 2019-08-15 12:43:40 · 8104 阅读 · 0 评论 -
C# lock关键词/lock语句块、线程锁
一、lock关键词说明1. lock 关键字将语句块标记为临界区,方法是获取给定对象的互斥锁,执行语句,然后释放该锁。 2. lock 语句块锁定,功能等同于Monitor.Enter(obj); //代码段Monitor.Exit(obj); 3. lock语句块锁定和Monitor线程锁,不能跨进程同步二、备注lock 关键字可确保当一个线程位于代码的临原创 2017-01-16 16:34:23 · 1495 阅读 · 0 评论 -
C#时间点字符串转换为日期,当天时间点判断
一、时间点转换在开发中经常遇到,在当天中某个时间段中,才允许执行的操作,然而这个时间段需要自由指定。总结:在C#中1.将时间点,转换成日期对象 ,常用操作Convert.ToDateTime("11:20") ,这个转换对于日期部分默认为了当天的Date2.进行日期判断直接使用大于小于或等于操作符,DateTime.Now >= start && DateTi...原创 2018-10-04 12:01:08 · 4802 阅读 · 0 评论 -
C# 本地时间格式,UTC时间格式,GMT时间格式处理
一、本地时间显示DateTime now = DateTime.Now;//本地时间格式Console.WriteLine(now.ToLongDateString());Console.WriteLine(now.ToLongTimeString());Console.WriteLine(now.ToLocalTime());二、UTC时间格式//Utc时间格式DateTimeOff...原创 2018-05-16 17:59:42 · 9511 阅读 · 0 评论 -
Vlc.DotNet C#音视频播放器使用说明及简单实例
一、资源官方Git地址:https://github.com/ZeBobo5/Vlc.DotNetNuget包地址-wpf:https://www.nuget.org/packages/Vlc.DotNet.Wpf/下载解压有四个类库工程和两个实例项目 Vlc.DotNet.Core.Interops Vlc.DotNet.Core Vlc.DotNet.Forms原创 2016-10-04 16:04:30 · 32430 阅读 · 19 评论 -
C# Windows-API-Code-Pack文件选择对话框实例
一、新建Wpf项目,需要添加引用Install-Package WindowsAPICodePack-CoreInstall-Package WindowsAPICodePack-Shell二、选择文件对话框实例CommonOpenFileDialog选择媒体文件//指定视频文件夹选择视频文件//系统文件夹可能会获取失败//ShellContainer selFolder原创 2016-10-01 19:04:11 · 5257 阅读 · 0 评论