C#文件目录操作方法汇总

C#文件目录操作方法汇总

在C#编程中,文件和目录操作是非常常见的需求。本文总结了常用的C#文件目录操作方法,包括路径操作、目录创建、文件创建、文件读写、文件复制、文件删除等多个方面,旨在帮助读者快速实现对文件和目录的操作。

路径操作

获取当前应用程序执行文件所在目录

string path = AppDomain.CurrentDomain.BaseDirectory;

获取当前进程的工作目录

string path = Environment.CurrentDirectory;

获取指定文件所在目录

string path = Path.GetDirectoryName(filePath);

目录操作

判断目录是否存在

bool isExists = Directory.Exists(directoryPath);

创建目录,如果已存在则不创建

Directory.CreateDirectory(directoryPath);

删除目录,如果目录非空则抛出异常

Directory.Delete(directoryPath);

强制删除目录及其子目录以及文件

Directory.Delete(directoryPath, true);

复制目录及其子目录以及文件

Directory.CreateDirectory(targetDirectoryPath);
FileSystem.CopyDirectory(directoryPath, targetDirectoryPath, true);

文件操作

判断文件是否存在

bool isExists = File.Exists(filePath);

创建文件,如果已存在则不创建

File.Create(filePath);

读取文件的所有文本

string text = File.ReadAllText(filePath);

写入文本到文件中

File.WriteAllText(filePath, text);

追加文本到文件中

File.AppendAllText(filePath, text);

复制文件

File.Copy(sourceFilePath, targetFilePath, true);

移动文件或重命名文件

File.Move(sourceFilePath, targetFilePath);

删除文件

File.Delete(filePath);

示例说明

复制文件夹

using System.IO;

public static void CopyDirectory(string sourceDirectoryPath, string targetDirectoryPath)
{
    if (!Directory.Exists(targetDirectoryPath))
    {
        Directory.CreateDirectory(targetDirectoryPath);
    }

    foreach (string file in Directory.GetFiles(sourceDirectoryPath))
    {
        string targetFilePath = Path.Combine(targetDirectoryPath, Path.GetFileName(file));
        File.Copy(file, targetFilePath, true);
    }

    foreach (string directory in Directory.GetDirectories(sourceDirectoryPath))
    {
        string targetDirectoryPath = Path.Combine(targetDirectoryPath, Path.GetFileName(directory));
        CopyDirectory(directory, targetDirectoryPath);
    }
}

示例代码中定义了一个 CopyDirectory 方法,用于复制指定目录下的所有文件和子目录到目标目录中。方法中使用了递归实现,遍历源目录下的所有文件和子目录,并将其复制到目标目录下。

读取文件内容到列表中

using System.Collections.Generic;
using System.IO;

public static List<string> ReadFileToList(string filePath)
{
    List<string> result = new List<string>();

    using (StreamReader sr = new StreamReader(filePath))
    {
        string line;
        while ((line = sr.ReadLine()) != null)
        {
            result.Add(line);
        }
    }

    return result;
}

示例代码中定义了一个 ReadFileToList 方法,用于读取指定文件的所有行并保存到列表中。方法中使用 StreamReader 类进行文件读取操作,逐行读取文本内容,并添加到结果列表中。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#文件目录操作方法汇总 - Python技术站

(0)
上一篇 2023年6月7日
下一篇 2023年6月7日

相关文章

  • 体验.NET与文件存储服务MinIO

    对象文件存储服务(OSS)主要用于存储零散的文件,和直接存储到本地文件系统中相比,有以下的几个优势: 跨服务器可用 兼容Amazon S3 API 横向扩容 高可用 支持加密 MinIO就是一个高性能的文件服务,我们使用.NET来操作一下。 部署MinIO 最简单的办法,就是在Docker上运行MinIO。可以使用以下命令启动MinIO: docker ru…

    C# 2023年4月24日
    00
  • C#使用DevExpress中的XtraCharts控件实现图表

    C#使用DevExpress中的XtraCharts控件实现图表攻略 简介 XtraCharts是DevExpress为.NET平台提供的一个高性能图表组件,它支持多种图表类型,并且可以定制外观和数据绑定方式。 在本文中,我们将详细介绍使用C#和DevExpress控件库来实现XtraCharts控件的图表制作。 准备工作 在使用XtraCharts之前,我…

    C# 2023年6月1日
    00
  • C#中ArrayList的使用方法

    下面是对于“C#中ArrayList的使用方法”的详细讲解攻略。 什么是ArrayList ArrayList是C#中的一个集合类,它可以用来存储任何类型的对象,并且具有动态增长和缩减的功能。ArrayList内部以数组的形式实现,它可以在不指定大小的情况下自动增加容量,以便能够容纳新元素。 创建ArrayList对象 可以使用以下语法创建ArrayList…

    C# 2023年6月7日
    00
  • 提取HTML代码中文字的C#函数

    提取HTML代码中的文字可以通过正则表达式来实现,C#中可以使用System.Text.RegularExpressions命名空间下的Regex类来操作正则表达式。 下面是提取HTML中文字的C#函数的完整攻略: 步骤一:引用命名空间和类库 using System.Text.RegularExpressions; 步骤二:编写提取HTML中文字的函数 p…

    C# 2023年5月31日
    00
  • 关于C#操作文件路径(Directory)的常用静态方法详解

    关于C#操作文件路径(Directory)的常用静态方法详解 Directory类的简介 在C#中,Directory类提供了用于操作文件夹和文件路径的静态方法。它通过一系列的静态方法,可以实现对于文件夹以及文件路径的各种操作。常用的静态方法有以下几种: Directory.Exists(string path):判断某个路径是否存在 Directory.C…

    C# 2023年5月15日
    00
  • 用c#实现简易的计算器功能实例代码

    下面是用c#实现简易的计算器功能实例代码的完整攻略: 一、准备工作 在开始编写代码之前,我们需要确保电脑上已经安装了Visual Studio开发环境。接着,我们需要打开Visual Studio,并创建一个新的控制台应用程序项目。 二、添加需要的命名空间 在代码文件开头,需要添加以下命名空间: using System; using System.Coll…

    C# 2023年6月6日
    00
  • 解析Silverlight调用WCF/Rest异常的解决方法

    解析Silverlight调用WCF/Rest异常的解决方法。下面我们来一步步讲解。 问题描述 在使用Silverlight调用WCF/Rest服务时,可能会遇到各种异常错误,比如: System.ServiceModel.CommunicationException System.ServiceModel.FaultException System.Net…

    C# 2023年5月15日
    00
  • ASP.NET Core 6.0 基于模型验证的数据验证功能

    下面我将为您介绍ASP.NET Core 6.0基于模型验证的数据验证功能的详细攻略。 1. 简介 ASP.NET Core 6.0 基于模型验证的数据验证功能旨在帮助开发人员验证用户提交的数据以确保数据的准确性和安全性。它可以通过将验证规则添加到模型中来实现这一目标,并在模型绑定期间对数据进行验证。 2. 添加验证规则 要在 ASP.NET Core 6.…

    C# 2023年6月3日
    00
合作推广
合作推广
分享本页
返回顶部