• c#基础三


    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.IO;
    namespace _02Directory
    {
        class Program
        {
            static void Main(string[] args)
            {
                //CreateDirectory:创建一个新的文件夹
                //Delete:删除
                //Move:剪切
                //Exist()判断指定的文件夹是否存在
    
                //if (!Directory.Exists(@"C:UsersSpringRainDesktop
    ew"))
                //{
                //    Directory.CreateDirectory(@"C:UsersSpringRainDesktop
    ew");
                //}
    
                //Console.WriteLine("操作成功");
    
                //for (int i = 0; i < 100; i++)
                //{
                //    Directory.CreateDirectory(@"C:UsersSpringRainDesktop
    ew" + i);
                //}
    
                //Console.WriteLine("创建成功");
    
    
                //移动
    
                //Directory.Move(@"C:UsersSpringRainDesktop
    ew", @"C:UsersSpringRainDesktop
    ew2");
                //Console.WriteLine("移动成功");
                //Directory.Delete(@"C:UsersSpringRainDesktop
    ew2",true);
                //Console.WriteLine("删除成功");
                //Console.ReadKey();
    
    
                //获得指定目录下所有文件的全路径
                //string[] fileNames = Directory.GetFiles(@"F:老赵生活Music","*.mp3");
    
                //获得指定目录下所有的文件夹
                //只能获得当前第一目录下所有的文件夹
                string[] dics = Directory.GetDirectories(@"c:");
                foreach (string item in dics)
                {
                    Console.WriteLine(item);
                }
                Console.ReadKey();
    
            }
        }
    }
    View Code

    1、StringBuilder
    它就是拼接字符串的一个工具,拼成完成后,还是需要将它转回字符串。

    详解  见  https://www.cnblogs.com/cang12138/p/7323709.html


    2、ref参数
    ref参数侧重于将一个值带到函数中进行改变,再讲改变后的值带出去。ref参数在函数内不用赋值
    函数外必须为ref参数赋值。 

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace _04ref参数的使用
    {
        class Program
        {
            static void Main(string[] args)
            {
                double salary = 5000;
                JiangJin(ref salary);
                Console.WriteLine(salary);
                Console.ReadKey();
            }
    
            static void JiangJin(ref double s)
            {
                s += 500;
            }
        }
    }
    View Code

    3、out参数

    4、params可变参数


    5、集合的学习
    非泛型集合
    ArrayList
    Hashtable


    泛型集合List<T>

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace _07List泛型集合
    {
        class Program
        {
            static void Main(string[] args)
            {
                List<int> list = new List<int>();
                //集合--->数组
                //Count:获取集合中实际包含的元素的个数
                //Capcity:集合中可以包含的元素的个数
    
                //list.Add(1);
                //Console.WriteLine(list.Count);
                //Console.WriteLine(list.Capacity);
    
                //Add的是添加单个元素
                //AddRange是添加集合
                list.Add(100);
                list.AddRange(new int[] { 1, 2, 3, 4, 5, 6 });
    
                //list.Remove(100);
                //list.RemoveAll(n => n > 3);
    
                //list.RemoveAt(3);
    
                //list.RemoveRange(1, 6);
    
                // list.Insert(1, 200);
    
                // list.InsertRange(0, new int[] { 5, 4, 3, 2, 1 });
    
                //集合跟数组之间的转换
    
                //集合----->数组
                int[] nums = list.ToArray();
    
                List<string> list2 = new List<string>();
    
                //list2.ToArray()
    
                //数组转集合
                int[] nums3 = { 1, 2, 3, 4, 5, 6 };
    
                List<int> list3 = nums3.ToList();
    
               
                for (int i = 0; i < list3.Count; i++)
                {
                    Console.WriteLine(list3[i]);
                }
    
                Console.ReadKey();
            }
        }
    }
    View Code


    Dictionary<Tkey,Tvalue>

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace _09Dictionary键值对集合
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Dictionary<string, string> dic = new Dictionary<string, string>();
                //dic.Add("1", "张三");
                //dic.Add("2", "李四");
                //dic.Add("3", "王五");
                //dic.Add("4", "赵六");
                ////键值对集合中的键必须是唯一的
                ////dic.Add(4, "田七");
                ////键值对集合中的值是可以重复的
                //dic.Add("5", "王五");
                ////可以给键值对集合中的某一个值进行重新赋值
                //dic["4"] = "田七";
                //键值对集合常用函数
                //判断集合中是否已经包含某一个键
                //if (!dic.ContainsKey(13))
                //{
                //    dic.Add(13, "玩狗蛋儿");
                //}
                //else
                //{
                //    dic[3] = "王狗蛋儿";
                //}
                //Console.WriteLine(dic[13]);
    
                //使用foreach循环,通过遍历键值对的形式对键值对集合进行遍历
                //第一种遍历方式:遍历集合中的键
                //foreach (string item in dic.Keys)
                //{
                //    Console.WriteLine("键---{0}            值---{1}",item,dic[item]);
                //}
    
                //第二种遍历方式:遍历集合中的键值对
                //foreach (KeyValuePair<string, string> kv in dic)
                //{
                //    Console.WriteLine("键---{0}            值---{1}", kv.Key, kv.Value);
                //}
    
                //Console.WriteLine(dic[3]);//整体代表的就是值
               // Console.ReadKey();
    
            }
        }
    }
    View Code

    6、装箱和拆箱
    装箱:值类型---->引用类型
    拆箱:引用类型--->值类型
    我们判断是否发生了拆箱或者装箱,首先要判断这两种数据类型是否存在继承关系。
    你装箱的时候拿什么类型装的箱,你拆的时候,就得拿什么类型去拆。



    7、List<T>常用的函数
    Add():添加单个元素
    AddRange():添加一个集合
    Insert():插入一个元素
    InsertRange():插入一个集合
    Remove():移除指定的元素
    RemoveAt():根据下标移除元素
    RemoveRange():移除一定范围内的元素
    ToArray():集合转换成数组
    ToList():数组转换成集合


    8、编码格式
    将字符串是怎样的形式保存为二进制。
    ascii 256

    6000 GB2312
    GBK GB18030

    ISO
    Unicode
    utf-16
    utf-8
    出现乱码的原因:我们保存这个文件的时候采取的编码跟打开这个文件的时候采取的编码格式不一致。

    文本文件:拖到txt中还能看得懂得就是文本文件

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.IO;
    namespace _14File类的操作
    {
        class Program
        {
            static void Main(string[] args)
            {
                //File
                //Exist():判断指定的文件是否存在
                //Create():创建
                //Move():剪切
                //Copy():复制
                //Delete():删除
    
    
                //if (!File.Exists("1.txt"))
                //{
                //    File.Create("1.txt");
                //}
    
                //if (File.Exists("1.txt"))
                //{
                //    File.Delete("1.txt");
                //}
                //
    
                //File.Copy(@"C:UsersSpringRainDesktopenglish.txt", @"D:aaaaaa.txt");
                //Console.WriteLine("操作成功");
                //File.Move(@"D:aaaaaa.txt", @"C:UsersSpringRainDesktopbbbbb.txt");
    
                //ReadAllLines()默认采用的编码格式是utf-8
                //string[] str = File.ReadAllLines(@"C:UsersSpringRainDesktopenglish.txt");
                //ReadAllText()默认采用的编码格式也是utf-8
                //string str = File.ReadAllText(@"C:UsersSpringRainDesktopenglish.txt");
                //Console.WriteLine(str);
    
                //byte[] buffer = File.ReadAllBytes(@"C:UsersSpringRainDesktopenglish.txt");
                ////字节数组---->字符串
                //string str = Encoding.UTF8.GetString(buffer);
                //Console.WriteLine(str);
                //string str="张三李四王五百家姓";
                ////字符串--->字节数组
                //byte[] buffer= Encoding.Default.GetBytes(str);
                //File.WriteAllBytes(@"C:UsersSpringRainDesktop121212.txt", buffer);
                //Console.WriteLine("写入成功");
                //Console.ReadKey();
                //File.WriteAllLines(@"C:UsersSpringRainDesktop121212.txt", new string[] { "a", "b" });
    
              //  File.WriteAllText(@"C:UsersSpringRainDesktop121212.txt", "c");
    
                //byte[] buffer = new byte[3];
                //Console.WriteLine(buffer.ToString());
                //18 99 221 我爱你
               // Encoding.Default.GetString()
    
            }
        }
    }
    View Code

    File的使用

    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Text;
    
    namespace _01File类练习
    {
        class Program
        {
            static void Main(string[] args)
            {
                //string path = @"C:UsersSpringRainDesktop工资.txt";
    
                //string[] contents = File.ReadAllLines(path, Encoding.Default);
                //for (int i = 0; i < contents.Length; i++)
                //{
                //    //temp[0]张三  temp[1]5000
                //    string[] temp = contents[i].Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
    
                //    contents[i] = temp[0] + int.Parse(temp[1]) * 2;
    
                //}
    
                //File.WriteAllLines(path, contents);
                //Console.WriteLine("操作成功");
                //Console.ReadKey();
            }
        }
    }
    View Code

    Directory的使用

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.IO;
    namespace _02Directory
    {
        class Program
        {
            static void Main(string[] args)
            {
                //CreateDirectory:创建一个新的文件夹
                //Delete:删除
                //Move:剪切
                //Exist()判断指定的文件夹是否存在
    
                //if (!Directory.Exists(@"C:UsersSpringRainDesktop
    ew"))
                //{
                //    Directory.CreateDirectory(@"C:UsersSpringRainDesktop
    ew");
                //}
    
                //Console.WriteLine("操作成功");
    
                //for (int i = 0; i < 100; i++)
                //{
                //    Directory.CreateDirectory(@"C:UsersSpringRainDesktop
    ew" + i);
                //}
    
                //Console.WriteLine("创建成功");
    
    
                //移动
    
                //Directory.Move(@"C:UsersSpringRainDesktop
    ew", @"C:UsersSpringRainDesktop
    ew2");
                //Console.WriteLine("移动成功");
                //Directory.Delete(@"C:UsersSpringRainDesktop
    ew2",true);
                //Console.WriteLine("删除成功");
                //Console.ReadKey();
    
    
                //获得指定目录下所有文件的全路径
                //string[] fileNames = Directory.GetFiles(@"F:老赵生活Music","*.mp3");
    
                //获得指定目录下所有的文件夹
                //只能获得当前第一目录下所有的文件夹
                string[] dics = Directory.GetDirectories(@"c:");
                foreach (string item in dics)
                {
                    Console.WriteLine(item);
                }
                Console.ReadKey();
    
            }
        }
    }
    View Code

     TreeView的使用

    见   https://www.cnblogs.com/net064/p/5534697.html 

      























  • 相关阅读:
    codechef T4 IPC Trainers
    超低延迟直播系统WebRTC编译Android报错UnicodeDecodeError: ‘ascii‘ codec can‘t decode byte 0xe6 in position
    网络穿透/视频组网平台EasyNTS上云网关进行视频拉转推报错failed-init Connect failed: I/O error
    WebRTC网页远程视频会议系统EasyRTC 在新版谷歌浏览器 87 及部分版本黑屏问题的优化
    【解决方案】基于RTSP/RTMP/GB28181协议视频平台EasyCVR搭建的金融系统担保监控平台的设计与实现
    视频综合管理平台EasyNVS是如何接入EasyNVR监控系统实现视频通道的统一管理?
    【解决方案】TSINGSEE青犀视频安防可视化解决方案搭建“产业大脑”,打造服务型智慧政府
    【解决方案】TSINGSEE青犀视频EasyCVR智能监控平台完善生鲜门店智能监控分析体系
    web/IOS/android视频智能分析平台EasyCVR接入视频对通道分组后通道仍显示为空如何修复?
    【解决方案】如何通过视频智能分析平台EasyCVR人脸识别功能实现国家电网可视化智能安防监控?
  • 原文地址:https://www.cnblogs.com/cb1186512739/p/9481555.html
Copyright © 2020-2023  润新知