随笔分类 - c#
摘要:打印所有时区 var zones = TimeZoneInfo.GetSystemTimeZones(); foreach (var z in zones) { Console.WriteLine($"{z.Id} - {z.DisplayName}, {z.StandardName}, {z.Da
阅读全文
摘要:1) 16进制字符串 a) c#内置api byte[] bytes = BitConverter.GetBytes(123); var hexStr = BitConverter.ToString(bytes); b) 实现1 ///返回低字节顺序十六进制字符串(低字节在左侧) public st
阅读全文
摘要:1秒=1000毫秒 1毫秒=1000微秒 1微秒=1000纳秒 1Tick=100纳秒 1微妙=10Tick 1毫秒=1000微妙=1000*10Tick 1秒=1000毫秒=1000*1000*10Tick long shanghaiTimeZoneTicks = 8 * 36000000000;
阅读全文
摘要:c#自带函数 //字符 -> charCode int charCode = char.ConvertToUtf32(str, 0); //charCode -> 字符 string ch = char.ConvertFromUtf32(charCode); 自己实现:字符 -> charCode
阅读全文
摘要:枚举 public enum MyFontStyleMask { Bold = 1, Italic = 1 << 1, Outline = 1 << 2, } //枚举转int { int a = (int)MyFontStyleMask.Italic; int b = Convert.ToInt3
阅读全文
摘要:最近在写一个配置表导出工具,自动生成代码那边会用到模板引擎,所以就熟悉了下Liquid的使用。 需要用到一个DotLiquid的库 using DotLiquid; var lqTemplate = Template.Parse(templateContent); var templateHash
阅读全文
摘要:什么是粘包? 比如:通过Socket发2条不一样长度的数据,"abc"和"defg"。因为Socket的数据不是你请求发就立即发送的,有时候为了减少网络交互次数,会把几小的个数据凑一凑一起发送。 如果前面的被凑到一起发送了"abcdefg",就出现了粘包。 如何解决粘包问题? 发送数据的时候,在数据
阅读全文
摘要:c#的几个Json库 MiniJSON SimpleJson litjson NewtonJson 其中MiniJSON最简单,所以这边也是学习这个库的Json解析部分(注意:只涉及解析,没有生成json)。 整体代码也没有用到特别的算法什么的,就是一个一个字符的读取,然后根据读到的边界标识符来进行
阅读全文