文件操作和文件夹基本操作以及文件读写操作

1、通过FlieInfo和DirectoryInfo来读取文件和文件夹属性
查看文件属性,创建文件,移动文件,重命名文件
判断路径是否存在,创建目录
2、通过File读写文件
3、使用流来读写文件
FileStream 文件流适合二进制文件的读与写
StreamReader 读取流 (适合文本文件)
StreamWriter 写入流 (适合文本文件)

例子:

通过FileInfo可以查看文件属性等信息

        static void Main(string[] args)
        {
            FileInfo fileInfo = new FileInfo("TextFile1.txt");
           //FileInfo fileInfo = new FileInfo(@"C: \Users\19055\source\repos\Text1\File\TextFile1.txt");
            Console.WriteLine(fileInfo.Exists);
            Console.WriteLine(fileInfo.Name);
            Console.WriteLine(fileInfo.Attributes);
            Console.WriteLine(fileInfo.IsReadOnly);
            Console.WriteLine(fileInfo.Length);
            if (fileInfo.Exists == true)
            {
                fileInfo.Delete();
            }
            Console.ReadLine();
          
        }
image.png

通过DirectotyInfo可以查看文件夹属性等信息

  static void Main(string[] args)
        {
            DirectoryInfo directoryInfo = new DirectoryInfo(@"C:\Users\19055\source\repos\Text1\File");
            Console.WriteLine(directoryInfo.Exists);
            Console.WriteLine(directoryInfo.FullName);
            Console.WriteLine(directoryInfo.Name);
            directoryInfo.CreateSubdirectory("file");
            Console.ReadLine();

        }
image.png

使用File读写文件

  static void Main(string[] args)
        {
            //读数据
            string a = File.ReadAllText("TextFile1.txt");
            Console.WriteLine(a);
            //写数据
            File.WriteAllText("TextFile2.txt", "holle world!");
            Console.ReadLine();
        }

使用流读取和写入文件

用fileStream读出(适合二进制文件)

        static void Main(string[] args)
        {
            FileStream fileStream = new FileStream("TextFile1.txt",FileMode.Open);
            byte[] date = new byte[1024];
            int length=fileStream.Read(date,0,date.Length);
            for (int i = 0; i < length; i++)
            {
                Console.Write(date[i]+"  ");
            }
            Console.ReadLine();
        }
    }

ileStream读出:如果文件过大就循环读入

        static void Main(string[] args)
        {
            FileStream fileStream = new FileStream("TextFile1.txt",FileMode.Open);
            byte[] date = new byte[1024];
            while (true)
            {
                int length = fileStream.Read(date, 0, date.Length);
                if (length == 0)
                {
                    Console.WriteLine("读取文件完毕");
                    Console.ReadLine();
                }
                for (int i = 0; i < length; i++)
                {
                    Console.Write(date[i] + "  ");
                }
            }
        }

ileStream读出:将图片写入一个新的文件

static void Main(string[] args)
        {
            FileStream fileReadStream = new FileStream("picture.png", FileMode.Open);
            FileStream fileWriteStream = new FileStream("picturecopy.png", FileMode.Create);
            byte[] date = new byte[1024];
            while (true)
            {
                int length = fileReadStream.Read(date, 0, date.Length);
                if (length == 0)
                {
                    Console.WriteLine("读取数据完毕");
                    break;
                }
                else
                {
                    fileWriteStream.Write(date, 0, date.Length);
                }
;            }
            fileWriteStream.Close();
            fileReadStream.Close();
            Console.ReadLine();

        }
image.png

用streamReader和streamWriter读出和写入文件(适合文本文件)

        static void Main(string[] args)
        {
            StreamReader streamReader = new StreamReader("TextFile1.txt");
            string massage = streamReader.ReadToEnd();
            Console.WriteLine(massage);
            streamReader.Close();
            StreamWriter streamWriter = new StreamWriter("Text.txt");
            while (true)
            {
                string mag = Console.ReadLine();
                if (mag == "q")
                {
                    break;
                }
                else
                {
                    streamWriter.Write(mag);
                }
                streamWriter.Close();
            }
            Console.ReadLine();
        }
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容