c#面向对象5--Path类/File类(上)/编码格式

2021-04-07  本文已影响0人  Mona_Song

1.Path类:专门用来操作路径的

Path.GetFileName(地址字符串)可以快速获得一个路径下的文件名;
Path.GetFileNameWithoutExtension(地址字符串)可以快速获得一个路径下的没有扩展名的文件名;
Path.GetExtension(地址字符串)可以快速获得一个文件的扩展名;
Path.GetDirectoryName(地址字符串)获得文件所在文件夹的名称;
Path.GetFullPath(地址字符串)获得文件的全路径;
Path.Combine(@"c:\a\","b.txt")把两段路径连接起来;

namespace _00截取地址
{
    class Program
    {
        static void Main(string[] args)
        {
            string str = @"D:\Tools\VS2019\workplace\foreach循环\foreach循环.sln";
            Console.WriteLine(Path.GetFileName(str));
            Console.WriteLine(Path.GetFileNameWithoutExtension(str));
            Console.WriteLine(Path.GetExtension(str));
            Console.WriteLine(Path.GetDirectoryName(str));
            Console.WriteLine(Path.Combine(@"c:\a\", "b.txt"));
            //int index = str.LastIndexOf("\\");
            //str = str.Substring(index+1);
            //Console.WriteLine(str);
            Console.ReadKey();
        }
    }
}
运行结果

2.File类

File.Create(路径及新建文件名);创建一个文件
File.Delete(路径);删除一个文件
File.Copy(被拷贝路径,新路径);拷贝文件
File.Move(原路径及文件名,新路径及文件名);将指定文件移动到新位置,并指定新文件名的选项;
File.ReadAllBytes(要打开的文件路径);打开一个文件,然后将文件的内容读入一个字符串,然后关闭该文件;

File.ReadAllBytes();会得到一个字节数组,要把字节数组转换成字符串,使用Encoding.Default.GetString(字节数组);

File.WriteAllBytes(新文件路径,new byte[]{1,2,3});创建一个新文件,在其中写入指定的字节数组,然后关闭该文件。如果目标文件已存在,则覆盖该文件。

File.WriteAllBytes();写入之前要将要写入的字符串转换成字节数组,使用Encoding.Default.GetBytes(字符串);

namespace File类
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建一个文件
            //File.Create(@"C:\Users\lenovo\Desktop\a.txt");
            //Console.WriteLine("创建成功");
            //Console.ReadKey();

            //删除一个文件
            //File.Delete(@"C:\Users\lenovo\Desktop");
            //Console.WriteLine("删除成功");
            //Console.ReadKey();


            //复制一个文件
            //File.Copy(@"D:\Tools\VS2019\workplace\new.txt",@"D:\Tools\VS2019\workplace\copy.txt");
            //Console.WriteLine("复制成功");
            //Console.ReadKey();

            //移动文件
            //File.Move(@"C:\Users\lenovo\Desktop\b.txt", @"E:\a.txt");

           //创建一个新文件,在其中写入指定的字节数组,然后关闭该文件。如果目标文件已存在,则覆盖该文件。
            //string s = "小可爱与大漂亮";
            //byte[] b = Encoding.Default.GetBytes(s);
            //File.WriteAllBytes(@"C:\Users\lenovo\Desktop\a.txt",b );
            //Console.WriteLine("写成功");
            //Console.ReadKey();

            //打开一个文件,然后将文件的内容读入一个字符串,然后关闭该文件
            //byte[] b = new byte[] { };
            //b = File.ReadAllBytes(@"C:\Users\lenovo\Desktop\a.txt");
            //string s = Encoding.Default.GetString(b);
            //Console.WriteLine(s);
            //Console.ReadKey();
        }
    }
}
图1:键盘写入情况下File.ReadAllBytes();读出的结果是乱码
图2:File.WriteAllBytes();写入成功
图3:File.ReadAllBytes();读刚刚用WriteAllBytes();写的就可以成功

3.编码格式

上一篇 下一篇

猜你喜欢

热点阅读