C#
文章平均质量分 68
Unity_阿黄
写程序的产品狗
展开
-
【C#】Unity关于读取路径的问题
其实实现的功能很简单,就是下载资源,本地保存本地读取,在编辑器下测试没有任何问题,打包后来发现查找文件夹中的文件数量一直是0( Directory.GetFiles(path).Length),这就很奇怪了。解决方案如下: DirectoryInfo direction = new DirectoryInfo(path); FileInfo[] fileInfos = direc...原创 2018-12-05 22:01:25 · 801 阅读 · 1 评论 -
【C#】自定义数组默认初始化
自定义数组初始化public class ObRoleMessage : MessageBase{ public bool isKh; public int id;} private ObRoleMessage[] CollectRoleMsg() { var roleMsg = ObGetMessage.Instance._dicObRole原创 2017-09-29 17:06:37 · 3373 阅读 · 0 评论 -
【C#】如何得到字符串中 汉字的个数
代码很简单 int _noCharacter = 0; for (int j = 0; j < stepText.text.Length; j++) { if (stepText.text[j] >= 0x4E00 && stepText.text[j] <= 0x9FA5) {原创 2017-09-26 15:05:57 · 2672 阅读 · 0 评论 -
【C#】解决那些参数不同的方法无法注册委托的情况
其实使用起来很简单 delegate void Del(object obj); private Del del; public void Test() { del += (x) => { OnClick(); }; } void OnClick() { }注册委托的时候传一个拉姆达表达式 将方法放入方法原创 2017-08-30 17:28:19 · 818 阅读 · 0 评论 -
【C#】简单的消息管理机制
public enum CustomEventType{ //事件列表}public delegate void EventCallback(object data = null);public class EventManager{ private static EventManager _instance; public static EventManage转载 2017-08-30 13:57:56 · 678 阅读 · 0 评论 -
【C#】List.Find
类似于C++ 中的STL C#中也有List这样的数据结构方便开发者存储数据,我们常常会使用到sort,find等算法。以find为例,在msdn给出的原型如下 public T Find ( Predicate match)1234其中泛型T为list定义的时候用户决定的存储类型,Predicate match 是一个委托,可理解为函数指针,实质上被定义为转载 2017-09-13 17:53:54 · 2341 阅读 · 0 评论 -
【C#】C# 扩展方法
今天在做一个功能的时候用到了扩展方法,想要得到一个字符串‘.’前面的字符于是就这样写了 public static string RomovePointString( string content) { if (content.Contains(".")) { string str = content.Split('.')[0];原创 2017-08-25 15:27:07 · 607 阅读 · 0 评论 -
【C#】如何让字典Dictionary通过value获取对应的key值
1:最直白的循环遍历方法,可以分为遍历key--value键值对以及所有的key两种表现形式2:用Linq的方式去查询(当然了这里要添加对应的命名空间 using System.Linq) 如下为一个十分简单的代码示例:private void GetDicKeyByValue() { Dictionary dic = new Dic转载 2017-07-13 15:58:22 · 42972 阅读 · 0 评论 -
【C#】空合并运算符 ??
偶然 看到这样的一个 单例 private static ResourceMgr _inst; public static ResourceMgr Inst { get { return _inst = _inst ?? new ResourceMgr(); } }后发现 ??就是判断??左边表达式是否为null,如是null则取右边表达式的原创 2017-06-19 14:12:46 · 694 阅读 · 0 评论 -
【C#】C# 简单的索引器
using System.Collections;using System.Collections.Generic;using UnityEngine;public class Coder : MonoBehaviour{ public new int Age { get { return 16; } } public new stri原创 2017-10-18 17:29:45 · 273 阅读 · 0 评论 -
【C#】Activator.CreateInstance用法
今天在整理项目代码时,发现 有这样一段代码 LoaderBase loader = Activator.CreateInstance(Type.GetType(type,true)) as LoaderBase;原来 Activator.CreateInstance 一直没有使用过 查了一下MSDN 发现Activator 类包含用于在本地创建对象类型的方法。 无法继承此类。原创 2017-10-27 10:37:04 · 37299 阅读 · 1 评论 -
【C#】List.Find
首先看一下 MSDN搜索与指定谓词所定义的条件相匹配的元素,并返回整个 List 中的第一个匹配元素。命名空间: System.Collections.Genericpublic T Find( Predicate match)参数matchType: System.PredicateT>Predicate 委托,用于定义要搜索的原创 2017-10-17 15:14:02 · 1462 阅读 · 0 评论 -
【C#】Winform+CefSharp 播放MP3 MP4 以及flash
周末加个班,怼了一项新需求,只是没想到转了产品又来搞研发,那就好好搞吧。公司要做一个屏幕管控系统,需要技术用winform +cefsharp 播放MP3 MP4 以及flash网上看了很多,不管是什么有偿,50积分啊,总体看来还是有解决方式的,下面说一下大概思路然后再分享具体步骤首先大家都知道 cefsharp 是不支持MP3MP4的播放的,所以 要对cefsharp进行重新打包,具...原创 2018-12-01 20:15:18 · 17606 阅读 · 1 评论 -
【C#】List 排序
方法很简单roles.Sort((a, b) => a.OwnId.CompareTo(b.OwnId));原创 2018-07-17 13:24:27 · 1249 阅读 · 0 评论 -
【Vs】vs2013打断点时,右键无法显示监听信息
转载 2018-02-28 10:07:24 · 434 阅读 · 0 评论 -
【C#】 bool.TryParse
查看bool .TryParse 得出 public static bool TryParse(string value, out bool result);在xml中读取一个bool 元素using System.Collections;using System.Collections.Generic;using UnityEngine;using System.X原创 2018-01-10 10:17:55 · 2923 阅读 · 0 评论 -
【C#】排序算法整理
即将离职的三胖大神发来一份排序整理 记录一下吧 /*排序方法 时间复杂度(平均) 时间复杂度(最坏) 时间复杂度(最好) 空间复杂度 稳定性 复杂性冒泡排序 O(n2) O(n2) O(n) O(1) 稳定 简单选择排序 O(n2...原创 2018-01-16 23:18:46 · 298 阅读 · 0 评论 -
【C#】List<T>.ForEach 方法
一边遍历list 可以用for 或者foreach去操作,后来发现list本身就有迭代的方法,ForEach查看MSDN的介绍:ForEach 本身要传一个Action的委托官方例子:using System;using System.Collections.Generic;class Program{ static void Main() {原创 2018-01-05 10:22:15 · 21133 阅读 · 0 评论 -
【C#】C#构造函数中:base和:this的区别
public MoveAction(Vector3 pos, IObjBase main, ActionAutoMode mode = ActionAutoMode.None, float posDelta = DefPositionDelta, float moveSpeed = DefMoveSpeed) : base(main, mode) { Tar原创 2017-12-27 09:57:25 · 1384 阅读 · 0 评论 -
【C#】观察者模式案例
using UnityEngine; using System.Collections; using System.Collections.Generic; using System; public class ObserverPattern : MonoBehaviour { /// /// 抽象观察者,定义接收通知的接口 ///原创 2017-11-30 10:44:44 · 330 阅读 · 0 评论 -
【C#】Readonly和Const的区别
目录什么是静态常量(Const)和动态常量(Readonly)静态常量(Const)和动态常量(Readonly)之间的区别动态常量(Readonly)被赋值后不可以改变总结什么是静态常量(Const)和动态常量(Readonly) 先解释下什么是静态常量(Const)以及什么是动态常量(Readonly)。 静态常量(Const)是指编译器在编译时候会对常量进行解转载 2017-11-15 10:12:38 · 411 阅读 · 0 评论 -
【C#】深度理解虚方法 继承 以及接口的简单使用
转载地址:http://www.cnblogs.com/longteng1991/archive/2013/06/13/3131739.html前言:我们都知道面向对象的三大特性:封装,继承,多态。封装和继承对于初学者而言比较好理解,但要理解多态,尤其是深入理解,初学者往往存在有很多困惑,为什么这样就可以?有时候感觉很不可思议,由此,面向对象的魅力体现了出来,那就是多态,多态用的好,可以提转载 2017-06-07 15:05:56 · 1359 阅读 · 1 评论 -
【C#】理解Lambda表达式
Lambda表达式主要用来简化匿名方法的语法。在匿名方法中,delegate关键字有点多余,因为编译器已经知道我们将方法赋值给委托。通过几个简单步骤,我们就可以将匿名方法转换为Lambda表达式:删除delegate关键字在参数列表和匿名方法主体之间防Lambda运算符=>。Lambda运算符读作"goes to"。MyDel del = delegate( int x) { retu原创 2017-04-13 13:41:36 · 510 阅读 · 0 评论 -
【C#】C#委托和字典的结合使用
using System.Collections;using System.Collections.Generic;using UnityEngine;public class DelegateDic : MonoBehaviour{ public delegate void del_Value(string name); public Dictionary dic_T转载 2017-04-12 17:45:33 · 2593 阅读 · 0 评论 -
【C#】C#OOP编程之继承性
文章转载:http://liuguozhu.blog.51cto.com/9142031/1831307C#的OOP编程之继承性,其本质就是通过继承让子类减少重复代码的编写,达到优化代码的作用。继承具体指“字段”与“方法”的继承,笔者梳理本阶段的知识点如下所示。1: 概念(基类、派生类) 生活中有"龙生龙,凤生凤,老鼠天生会打洞",这说的是日常生活中的“继承"现象。类似情形“国民老公转载 2016-10-28 12:05:23 · 712 阅读 · 0 评论 -
【C#】C#面向对象OOP编程
文章转载:http://liuguozhu.blog.51cto.com/9142031/1831120C#的OOP(面向对象)编程是C#编程语言中最为精华的部分,如果没有学习C#的OOP部分,则可以认为就没有学习过C#。 C#语言是2001年,微软推出".Net战略"时,专门订制的一门编程语言,其基本的思想就是仿照JAVA语言的虚拟机原理,开发出“受托管”的中间语言。(即:C#编译后不是转载 2016-10-28 12:03:22 · 4858 阅读 · 1 评论 -
【C#】关于文件的写入与读取
using UnityEngine;using System.Collections;using System.IO;public class BlogFileTest : MonoBehaviour{ //引入命名空间 system.IO /// /// 1.通过FileInfo和DirectoryInfo类来读取文件和文件夹属性 /// 查看文件属性,创建文件,移动文件原创 2016-06-22 17:35:53 · 1901 阅读 · 0 评论 -
【C#】XML的创建与读取
using UnityEngine;using System.Collections;using System.Xml;using UnityEditor;using System.IO;using System.Collections.Generic;using System;public class TestXml : MonoBehaviour{ Skill skill原创 2016-06-22 15:48:15 · 839 阅读 · 0 评论 -
【C#】ref 和 out
偶然在某学院看到的讲解 感觉讲的非常清晰 就直接 拿来看了原创 2016-06-07 22:33:08 · 392 阅读 · 0 评论 -
【C#】 关于属性
引用:《大话设计模式》属性 有两个方法 get 和 set。get 访问器返回与声明的属性相同的数据类型,表示的意思是调用时可以得到内部字段的值或引用;set访问器没有隐式设置参数,但它有一个隐式参数,就是value 它的作用是调用属性时可以给内部的字段活引用赋值;private int shoutNum = 3; public int ShoutNum {原创 2016-03-14 15:21:40 · 439 阅读 · 0 评论 -
【C#】常用的一些特性
[Header("名字")] public string name = "阿黄"; //设置多行输入的文本字段。 [MultilineAttribute] public string mText;//设置多行输入的文本字段。您可以设置的最大值和最小值的行数。 [SerializeField, TextAreaAttribute(2, 5)]原创 2016-01-27 11:21:04 · 1286 阅读 · 0 评论 -
【C#】C#中的位操作
原文地址:http://blog.sina.com.cn/s/blog_4cd32093010008hu.html位操作符是对数据按二进制位进行运算的操作符。c#位操作符包括:按位与 & :必须有相同对应的数 进行合并按位或 | :只要有数就可以合并按位取反 ~ :二进制取相反 0就取1 1就取0按位异或^ :相同1为0,不相同进行合并左移 移动二进制位置右转载 2016-02-16 16:08:07 · 1429 阅读 · 0 评论 -
【C#】正则表达式
原文链接:http://blog.csdn.net/u010019717/article/details/45015181 只能输入数字: "^[0-9]*$" 。 只能输入n位的数字:"^\d{n}$"。 只能输入至少n位的数字:"^\d{n,}$"。 只能输入m~n位的数字:"^\d{m,n}$"。 只能输入零和非零开头的数字:"^(0|[1-转载 2016-01-28 10:43:37 · 550 阅读 · 0 评论 -
【C#】C#多态性
文章转载:http://liuguozhu.blog.51cto.com/9142031/1831351C#的多态性本质上就是“一个方法实现多种功能”,为大中型项目开发提供便利性,起到大幅提高效率的目的。在C#的多态性上主要分为:“方法重载”与“方法覆盖”两种。 “方法重载”说的是一个方法,通过不同的“签名”(即:不同的方法参数列表),实现不同的功能,从而避免了大量相似的功能需要不同的方法转载 2016-10-28 13:27:22 · 785 阅读 · 0 评论 -
【C#】C#抽象类与接口
文章转载:http://liuguozhu.blog.51cto.com/9142031/1831631C#的抽象类与接口,是C#OOP编程中非常重要的概念,对于开发出“高内聚、低耦合”的优秀项目具有重要的作用。 C#抽象类是用关键字abstract 表示的,它即可以修饰类(抽象类),也可以修饰方法(抽象方法)。抽象类主要的作用是:列举一个类所需要的行为,提供一系列的规定,约束子类行为。转载 2016-10-28 13:28:35 · 1493 阅读 · 0 评论 -
【C#】C#关键字-where(泛型类型约束)
文章参考:http://blog.csdn.net/startwithdp/article/details/25636737 http://www.cnblogs.com/soundcode/p/5798769.html在定义泛型类时,可以对客户端代码能够在实例化类时用于类型参数的类型种类施加限制。如果客户端代码尝试使用某个约束所不允许的类型来实例化类,则会产生编译时错误。这些限原创 2016-10-28 14:49:06 · 6799 阅读 · 0 评论 -
【C#】C#删除文件和重命名
C#里面,重命名文件时,没有 rename 这个功能,使用的是FileInfo.MoveTo的方式,MoveTo 到原目录里一个新的名字,即实现了重命名public void RemoveItem () { for (int i = 0; i < contentGird.transform.childCount; i++) { if (contentGird.transform.G原创 2016-12-09 17:03:48 · 645 阅读 · 0 评论 -
【C#】C#中String.Empty、NULL与""三者的区别
String.Empty和""是一样的,都是空,习惯用string.empty。 Null和他们就有区别了,就是没有值,也没分配地址,此处可以理解成什么都没有。原创 2016-11-22 15:04:39 · 3283 阅读 · 0 评论 -
【C#】C# System.IO的一些文件操作
文章转载:http://www.manew.com/thread-98270-1-1.html/// /// 创建文件夹“MyTest”和文件“1.txt” /// void CreateFileAndDirector() { // 指定一个“当前活动文件夹” string activeDir = @"d:\";转载 2016-12-14 17:22:11 · 1618 阅读 · 0 评论 -
【Unity】保存图片的名字为当前年月日
核心代码 就特喵的一句filename = string.Format ("IMG_{0:D4}{1:D2}{2:D2}_{3:D2}{4:D2}{5:D2}.jpg", System.DateTime.Now.Year, System.DateTime.Now.Month, System.DateTime.Now.Day, System.DateTime.Now.Hour, Syste原创 2016-11-02 17:21:35 · 1056 阅读 · 0 评论