• c# 文件读取和写入


    文件写入

    using System.Collections.Generic;
    namespace demo1;
    
    /// 
    /// System.IO下的所有的Stream类是所有数据流的基类
    /// 流是用于传输数据的对象,流就是用来传输数据的
    /// 数据传输的两种方式:1、数据从外部源传输到程序中,这种叫做读取流,2、数据从程序中传输到外部源,这种叫做写入流
    /// 流一般具有三种操作:
    /// 读取操作:读出流对象中的数据,并且把它存放在另外一个数据结构中
    /// 写入操作:从一种数据结构中读取数据并且存放在流对象中
    /// 搜索操作:从流中当前位置搜索到指定位置
    /// 
    class proj
    {
        
    
        internal static void Main(string[] args)
        {
            //文件流:用来实现对文件的读取和写入。
    
            //文本文件的写入和读取
            //FileStream类的对象只能以字节的形式读取和写入数据
            //StreamReader类允许直接将字符和字符串写入文件,一般不针对二进制数据
    
            string path = "E:\\Desktop\\c#\\ConsoleApp1\\ConsoleApp1\\hello.txt";
            string mystr = "我爱你";
            //一般先创建FileStream对象,然后创建StreamWriter对象
            FileStream fs = new FileStream(path, FileMode.OpenOrCreate);
            StreamWriter sw=new StreamWriter(fs);
            sw.WriteLine(mystr);
            sw.Close();
            Console.WriteLine("写入完成");
    
            
            
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38

    文件的读取

    using System.Collections.Generic;
    namespace demo1;
    using System.IO;
    /// 
    /// System.IO下的所有的Stream类是所有数据流的基类
    /// 流是用于传输数据的对象,流就是用来传输数据的
    /// 数据传输的两种方式:1、数据从外部源传输到程序中,这种叫做读取流,2、数据从程序中传输到外部源,这种叫做写入流
    /// 流一般具有三种操作:
    /// 读取操作:读出流对象中的数据,并且把它存放在另外一个数据结构中
    /// 写入操作:从一种数据结构中读取数据并且存放在流对象中
    /// 搜索操作:从流中当前位置搜索到指定位置
    /// 
    class proj
    {
        
    
        internal static void Main(string[] args)
        {
            //文件流:用来实现对文件的读取和写入。
    
            //文本文件的写入和读取
            //FileStream类的对象只能以字节的形式读取和写入数据
            //StreamReader类允许直接将字符和字符串写入文件,一般不针对二进制数据
    
            string path = "E:\\Desktop\\c#\\ConsoleApp1\\ConsoleApp1\\hello.txt";
            //string mystr = "我爱你";
            //一般先创建FileStream对象,然后创建StreamWriter对象
            //FileStream fs = new FileStream(path, FileMode.OpenOrCreate);
            //StreamWriter sw=new StreamWriter(fs);
            //sw.WriteLine(mystr);
            //sw.Close();
            //Console.WriteLine("写入完成");
    
            //StreamReader类  用于从文件中读取数据,该类是一个通用类,可以用于任意流
            FileStream fs=new FileStream(path,FileMode.OpenOrCreate);
            string str = "";
            StreamReader sr = new StreamReader(fs);
            str=sr.ReadLine();
            sr.Close();
            Console.WriteLine(str); 
    
    
    
            
            
        }
    }
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49

    二进制文件的写入与读取

    using System.Collections.Generic;
    namespace demo1;
    using System.IO;
    /// 
    /// System.IO下的所有的Stream类是所有数据流的基类
    /// 流是用于传输数据的对象,流就是用来传输数据的
    /// 数据传输的两种方式:1、数据从外部源传输到程序中,这种叫做读取流,2、数据从程序中传输到外部源,这种叫做写入流
    /// 流一般具有三种操作:
    /// 读取操作:读出流对象中的数据,并且把它存放在另外一个数据结构中
    /// 写入操作:从一种数据结构中读取数据并且存放在流对象中
    /// 搜索操作:从流中当前位置搜索到指定位置
    /// 
    class proj
    {
        
    
        internal static void Main(string[] args)
        {
            Console.WriteLine("二进制文件的写入");
            Console.WriteLine("请输入文件名");
            string path=Console.ReadLine();
            //初始化FileStream对象
            FileStream fs=new FileStream(path, FileMode.OpenOrCreate);
            //初始化一个BinaryWriter对象
            BinaryWriter bw=new BinaryWriter(fs);
            int a = 40;
            double b = 3.14;
            bool c = true;
            string d = "hello world";
    
            //写入文件
            bw.Write(a);
            bw.Write(b);
            bw.Write(c);
            bw.Write(d);
    
            Console.WriteLine("成功写入");
            bw.Close();  //关闭BinaryWriter对象
            fs.Close();  //关闭文件流
    
            Console.WriteLine("二进制文件的读取");
            BinaryReader br=new BinaryReader(new FileStream(path,FileMode.Open));
    
            int e = br.ReadInt32();
            Console.WriteLine("int 型整型数据\t{0}",e);
            double f = br.ReadDouble();
            Console.WriteLine("double 数据 \t{0}",f);
            bool g = br.ReadBoolean();
            Console.WriteLine("bool 数据 \t{0}", g);
            string h = br.ReadString();
            Console.WriteLine("字符串类型数据\t{0}", h);
            br.Close();
            Console.WriteLine("读取完成");
        }
    }
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57

    c#遍历文件夹

    using System.Collections.Generic;
    namespace demo1;
    using System.IO;
    using System.Drawing;
    
    class proj
    {
    
        internal static void Main(string[] args)
        {
    
            DirectoryInfo dir = new DirectoryInfo("E:\\Desktop\\c#\\data");
            FileSystemInfo[] fs=dir.GetFileSystemInfos();
    
            foreach(FileSystemInfo i in fs)
            {
                if ( i is DirectoryInfo)
                {
                    Console.WriteLine("是文件夹{0}",i.FullName);
                    string [] a=Directory.GetFiles(i.FullName);
                    foreach (string s in a)
                    { 
                        Console.WriteLine("文件:{0}",s);
                    }
                }
                else
                {
                    Console.WriteLine("不是文件夹{0}",i.FullName);
                    FileStream fb=File.OpenRead("E:\\Desktop\\c#\\data\\data\\apple_1.jpg");
                    int file_lenth=(int)fb.Length;
                    Byte[] image = new Byte[file_lenth]; //建立一个字节数组
                    fb.Read(image,0, file_lenth );//按字节流读取
                }
            }
    
        }
    }
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39

    在这里插入图片描述

  • 相关阅读:
    Java_IO流04:处理流之二:转换流
    加速大数据分析:Apache Kylin使用心得与最佳实践详解
    IDENTIFY HIGH RISK HEALTH RECORDS
    MFC+OSG(Open Secene Graph)场景实现中文HUD(head up display)效果,防止中文乱码
    设计模式之工厂方法模式应用例题
    iOS打基础之Block二三事
    开启智慧之旅,AI与机器学习驱动的微服务设计模式探索
    知识引擎藏经阁天花板——高性能Java架构核心原理手册
    C#中DataGridView设置行高
    通过git bash激活虚拟环境遇到的问题
  • 原文地址:https://blog.csdn.net/qq_40107571/article/details/134541760