zoukankan      html  css  js  c++  java
  • C# file操作

    file操作

    file类

    using System;
    using System.IO;
    
    namespace _31_file类
    {
        class Program
        {
            static void Main(string[] args)
            {
                File.Create(@"F:BaiduNetdiskDownload1.Net基础教程1.Net基础3-c#高级2--面向对象继承2video
    ew.txt");
                Console.WriteLine("创建成功");
            }
        }
    }

    创建一个文件 File.Create()

    File.Create(@"F:BaiduNetdiskDownload1.Net基础教程1.Net基础3-c#高级2--面向对象继承2video
    ew.txt");

    删除一个文件File. Delete()

    File.Delete(@"F:BaiduNetdiskDownload1.Net基础教程1.Net基础3-c#高级2--面向对象继承2video
    ew.txt");

    复制一个文件 File.Copy(file,new_file)

    File.Copy(@"F:BaiduNetdiskDownload1.Net基础教程1.Net基础3-c#高级2--面向对象继承1资料.rar", @"F:BaiduNetdiskDownload1.Net基础教程1.Net基础3-c#高级2--面向对象继承2video资料.rar");

    Bytes 字节

    读数据 File.ReadAllBytes()

    byte[] buffer = File.ReadAllBytes(@"F:BaiduNetdiskDownload1.Net基础教程1.Net基础3-c#高级3--面向对象多态1video
    ew.txt");
    string s = Encoding.GetEncoding("UTF-8").GetString(buffer);
    Console.WriteLine(s);

    写入数据 File.WriteAllBytes(file,data)

    string s = "hello Irving";
    
    byte[] buffer = Encoding.Default.GetBytes(s);
    File.WriteAllBytes(@"F:BaiduNetdiskDownload1.Net基础教程1.Net基础3-c#高级3--面向对象多态1video
    ew.txt", buffer );

    string[] 数组

    读取文件为数组 File.ReadAllLines(file, Encoding)

    string[] s = File.ReadAllLines(@"F:BaiduNetdiskDownload1.Net基础教程1.Net基础3-c#高级3--面向对象多态1video
    ew.txt", Encoding.Default);
    Console.WriteLine(s);
    foreach (var item in s)
    {
        Console.WriteLine(item);
    }

    数组格式的数据保存文件 File.WriteAllLines(file, new string[]{})

    File.WriteAllLines(@"F:BaiduNetdiskDownload1.Net基础教程1.Net基础3-c#高级3--面向对象多态1video
    ew.txt", new string[] { "dsfsdf", "hello" });

    text 文本

    读取文件为文本 File.ReadAllText(file, Encoding)

    string s = File.ReadAllText(@"F:BaiduNetdiskDownload1.Net基础教程1.Net基础3-c#高级3--面向对象多态1video
    ew.txt", Encoding.Default);
    Console.WriteLine(s);

    文本格式的数据保存文件 File.WriteAllText(file, text)

    File.WriteAllText(@"F:BaiduNetdiskDownload1.Net基础教程1.Net基础3-c#高级3--面向对象多态1video
    ew.txt", "fhgkfdshgk");

    追加文本格式数据

    File.AppendAllText(@"F:BaiduNetdiskDownload1.Net基础教程1.Net基础3-c#高级3--面向对象多态1video
    ew.txt", "
    hello");

    FileStream 类

    fileStream 读取文件

    using System;
    using System.IO;
    using System.Text;
    
    namespace _32_FileStream
    {
        class Program
        {
            static void Main(string[] args)
            {
                Console.WriteLine("Hello World!");
                // FileStream 操作字节的
                // StreamReader和StreamWriter 是操作字符的
                FileStream fsRead = new FileStream(@"F:BaiduNetdiskDownload1.Net基础教程1.Net基础3-c#高级3--面向对象多态1video
    ew.txt", FileMode.OpenOrCreate, FileAccess.Read);
                byte[] buffer = new byte[1024*1024*5];  // 用于存放字节数据
                int r = fsRead.Read(buffer,0,buffer.Length);    // 返回实际读取的有效字节数
                string s = Encoding.Default.GetString(buffer, 0, r);  // 字节转字符串
                Console.WriteLine(s);
    
                // 释放所有占用资源
                fsRead.Close();
                fsRead.Dispose();
    
            }
        }
    }

     fileStream 写入文件 

    fs.SetLength(0); 清空

    using (FileStream fs = new FileStream(@"F:BaiduNetdiskDownload1.Net基础教程1.Net基础3-c#高级3--面向对象多态1video
    ew.txt", FileMode.OpenOrCreate, FileAccess.Write))
    {
        string s = "我来覆盖你";
        byte[] buffer = Encoding.Default.GetBytes(s);
    fs.SetLength(0); //清空 fs.Write(buffer,
    0, buffer.Length); }

    文件复制

    using System;
    using System.IO;
    using System.Text;
    
    namespace _32_FileStream
    {
        class Program
        {
            static void Main(string[] args)
            {
                string source = @"F:BaiduNetdiskDownload1.Net基础教程1.Net基础3-c#高级3--面向对象多态1video
    ew.txt";
                string target = @"F:BaiduNetdiskDownload1.Net基础教程1.Net基础3-c#高级3--面向对象多态1video
    ew.bak.txt";
    
                CopyFile(source, target);
            }
    
            public static void CopyFile(string source, string target)
            {
                // 创建一个负责读取的流
                
                using (FileStream fs = new FileStream(source, FileMode.Open, FileAccess.Read))
                {
                    using (FileStream fs_write = new FileStream(target, FileMode.OpenOrCreate, FileAccess.Write))
                    {
                        int size = 0;
                        while (true)
                        {
                            byte[] buffer = new byte[1024 * 1024 * 5];
                            int r = fs.Read(buffer, 0, buffer.Length);
                            if (r==0) return;
                            
                            fs_write.Write(buffer, 0, r);
                            size += r;
                        }
    
                    }
                }
                
            }
        }
    }

     StreamReader

    StreamReader 读取字符

    //StreamReader
    using (StreamReader sr = new StreamReader(source, Encoding.Default))
    {
        while (!sr.EndOfStream)
        {
            Console.WriteLine(sr.ReadLine());
            Console.WriteLine(sr.Read());
        }
    }

    StreamWriter

    StreamWriter 写入字符

    using (StreamWriter sw = new StreamWriter(source, true))
    {
    
        sw.Write("山东i过后四大公害世噶啥的回
    复收到回复
    ");
        //sw.WriteL("山东i过后四大公害世噶啥的回复收到回复");
        sw.WriteLine("山东i过后四大公害世噶啥的回复收到回复");
    }
  • 相关阅读:
    如何检查项目的需求是否完整
    Linux环境 Java内存快速查看
    字符串拼接性能比较出乎意料的结果
    MySQL 查看表大小
    五大机器学习微信公众号推荐
    如何用PYTHON代码写出音乐
    【转载】机器学习如门概览
    机器学习PAI为你自动写歌词,妈妈再也不用担心我的freestyle了(提供数据、代码)
    【转载】程序猿转型AI必须知道的几件事!
    如何拿到阿里算法校招offer
  • 原文地址:https://www.cnblogs.com/shizhengwen/p/15402489.html
Copyright © 2011-2022 走看看