程序开发中的一些API的使用技巧:
1、对电脑本地文件的访问
** **日志、文件上传、Excel、配置文件… …
命名空间 System.IO;
文件的检查/读/写/基本操作
1 | {//Check 检查的操作 |
1 | {//Directory 文件夹的操作 |
1 | {//File 文件的操作 |
1 | { // DriveInfo 驱动器(盘符)信息 |
1 | { // 一般常用操作 |
递归的使用(逻辑的难点)
** **自动迭代
1 | public static List<DirectoryInfo> GetAllDirectory(string rootPath) |
1 | private static void GetChildDirectory(List<DirectoryInfo> directoryList, DirectoryInfo directoryParent) |
日志
架构师:不允许没有监控(日志)的项目上线!
Log4net 插件的使用
序列化与反序列化
序列化是把一个内存中的对象的信息转化成一个可以持久化保存的形式,以便保存或传输,序列化的主要作用是不同平台之间进行通信。
常用的序列化有json、xml、文件等。
序列化是将对象的状态信息转换为可保持或传输的格式的过程(一堆字符),比如转成二进制、xml、json等的过程。
反序列化是在序列化过程中所生成的二进制串、xml、json等站换成数据结构或者对象的过程。 //数据结构?
两个过程结合起来,达到存储、传输数据。
主要作用:
1.在进程下次启动时,读取上次保存的对象的信息。
2.在不同的AppDomain或进程之间传递数据。
3.在分布式应用系统中传递数据序列化,其实就是将对象的状态信息转换成可用存储或传输的数据形式。
Serializable特性/NonSerialized特性
.net Framework框架提供的三种序列化的类:
BinaryFormatter 二进制序列化器 (可以序列化私有数据) 需要保存为文件的情况下使用,因为体积最小。
XmlSerializer XML序列化器 (不能序列化私有数据和保护级的字段) 网络传输的Web Api数据使用。
SoapFormatter Soap协议(序列化协议) (使用面较为狭窄,体积最大,额外信息较多。不建议使用,换做值用json) WebServise、WCF中使用。
Json序列化
程序集为System.Web.Extensions
** JavaScriptSerializer **Json序列化器。 (适用web平台)
DataContractJsonSerializer 序列化器。(适用通用平台)
**
**
XML与Json的区别?
** ** json比xml体积更小,目前json比较流行。JS对json识别较高。
json的数据传输要求严格完整。xml部分丢失,通过遍历可以找到其他数据。
验证码生成
验证码/GDI绘图/二维码/添加水印等工具类库的积累使用。汇集起来作为自己的工具箱。
- 本文作者: 梁俊可
- 本文链接: http://ljk3d.com/2021/10/19/cSharpNote/CSharp高级进阶教程_10_IO、序列化、验证码生成/
- 版权声明: 梁俊可工作室