C#教程

关注公众号 jb51net

关闭
首页 > 软件编程 > C#教程 > C#文件处理

C#中常见的文件处理操作小结

作者:林祖师

这篇文章主要为大家详细介绍了C#中常见的一些文件处理操作,例如文件管理,获取文件信息和控制处理文件,感兴趣的小伙伴可以跟随小编一起学习一下

1.管理文件

C# 中使用 File 类可以进行文件的读取、写入和删除操作。File 类提供了多个静态方法来处理文件,如 File.Exists() 用于检查文件是否存在,File.ReadAllText() 用于读取文件内容,File.WriteAllText() 用于写入文件内容,File.Delete() 用于删除文件等操作。

using System;
using System.IO;

class Program
{
    static void Main()
    {
        // 输出当前目录
        string currentDirectory = Directory.GetCurrentDirectory();
        Console.WriteLine("当前目录: {0}", currentDirectory);
        // 创建新文件夹并显示消息
        string newFolder = Path.Combine(currentDirectory, "NewFolder");
        Directory.CreateDirectory(newFolder);
        Console.WriteLine("已创建新文件夹: {0}", newFolder);
        // 创建新文件并显示消息
        string newFile = Path.Combine(currentDirectory, "NewFile.txt");
        File.WriteAllText(newFile, "Hello, World!");
        Console.WriteLine("已创建新文件: {0}", newFile);
        // 检查文件是否存在并读取内容
        if (File.Exists(newFile))
        {
            string fileContent = File.ReadAllText(newFile);
            Console.WriteLine("文件内容: {0}", fileContent);
        }
        // 删除文件和文件夹并显示消息
        File.Delete(newFile);
        Console.WriteLine("已删除文件: {0}", newFile);
        Directory.Delete(newFolder);
        Console.WriteLine("已删除文件夹: {0}", newFolder);
    }
}

2.管理驱动器

DriveInfo类可以获取有关计算机上驱动器的信息,例如可用空间、卷标和驱动器类型等。

using System;
using System.IO;

class Program
{
    static void Main()
    {
        DriveInfo[] allDrives = DriveInfo.GetDrives();
        foreach (DriveInfo d in allDrives)
        {
            Console.WriteLine("驱动器 {0}", d.Name);
            Console.WriteLine("  驱动器类型: {0}", d.DriveType);
            if (d.IsReady == true)
            {
                Console.WriteLine("  卷标: {0}", d.VolumeLabel);
                Console.WriteLine("  文件系统: {0}", d.DriveFormat);
                Console.WriteLine("  当前用户可用空间:{0, 15} 字节", d.AvailableFreeSpace);
                Console.WriteLine("  总可用空间:          {0, 15} 字节", d.TotalFreeSpace);
                Console.WriteLine("  驱动器总大小:            {0, 15} 字节 ", d.TotalSize);
            }
        }
    }
}

3.管理目录

C# 中使用 Directory 类可以进行目录的创建、删除和遍历操作。Directory 类提供了多个静态方法来处理目录,如 Directory.CreateDirectory() 用于创建目录,Directory.Delete() 用于删除目录,Directory.Exists() 用于检查目录是否存在,Directory.GetDirectories() 用于获取目录中的子目录列表,Directory.GetFiles() 用于获取目录中的文件列表等操作。

// 创建新目录
string newDirectory = Path.Combine(currentDirectory, "NewDirectory");
Directory.CreateDirectory(newDirectory);
Console.WriteLine("已创建新目录: {0}", newDirectory);
// 检查目录是否存在并获取子目录列表和文件列表
if (Directory.Exists(newDirectory))
{
    string[] subDirectories = Directory.GetDirectories(newDirectory);
    Console.WriteLine("子目录列表:");
    foreach (string subDir in subDirectories)
    {
        Console.WriteLine(subDir);
    }
    string[] files = Directory.GetFiles(newDirectory);
    Console.WriteLine("文件列表:");
    foreach (string file in files)
    {
        Console.WriteLine(file);
    }
}
// 删除目录
Directory.Delete(newDirectory);
Console.WriteLine("已删除目录: {0}", newDirectory);

4.管理路径

C# 中使用 Path 类可以进行路径操作,包括合并路径、获取文件名和扩展名等。Path 类提供了多个静态方法来处理路径,如 Path.Combine() 用于合并路径, Path.GetFileName() 用于获取文件名, Path.GetExtension() 用于获取文件扩展名等。

// 合并路径示例
string path1 = @"C:\Dir1";
string path2 = "Dir2";
string combinedPath = Path.Combine(path1, path2);
Console.WriteLine("合并后的路径: " + combinedPath);
// 获取文件名和扩展名示例
string filePath = @"C:\Dir1\file.txt";
string fileName = Path.GetFileName(filePath);
string fileExtension = Path.GetExtension(filePath);
Console.WriteLine("文件名: " + fileName);
Console.WriteLine("文件扩展名: " + fileExtension);

5.获取文件信息

C# 中使用 FileInfo 类可以获取文件的详细信息,如文件大小、创建时间、修改时间等。FileInfo 类提供了多个属性和方法来获取文件信息,如 Length 属性用于获取文件大小, CreationTime 属性和 LastWriteTime 属性分别用于获取文件的创建时间和最后修改时间等。

using System;
using System.IO;

class Program
{
    static void Main()
    {
        try
        {
            string filePath = @"C:\example\file.txt";
            // 检查文件是否存在
            if (File.Exists(filePath))
            {
                FileInfo fileInfo = new FileInfo(filePath);
                // 获取文件名
                string fileName = fileInfo.Name;
                Console.WriteLine("文件名: " + fileName);
                // 获取文件大小
                long fileSizeInBytes = fileInfo.Length;
                Console.WriteLine("文件大小 (字节): " + fileSizeInBytes);
                // 获取文件扩展名
                string fileExtension = fileInfo.Extension;
                Console.WriteLine("文件扩展名: " + fileExtension);
                // 获取文件创建时间
                DateTime creationTime = fileInfo.CreationTime;
                Console.WriteLine("创建时间: " + creationTime);
            }
            else
            {
                Console.WriteLine("文件不存在");
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine("发生错误: " + ex.Message);
        }
    }
}

6.控制如何处理文件

在 C# 中,您可以使用 File 类和 Directory 类来控制文件和目录的处理。下面是一些常见的操作:

读取文件内容:

string text = File.ReadAllText(@"C:\example\file.txt");

写入文件内容:

string content = "Hello, World!";
File.WriteAllText(@"C:\example\file.txt", content);

复制文件:

File.Copy(@"C:\example\file.txt", @"D:\backup\file.txt", true);

删除文件:

File.Delete(@"C:\example\file.txt");

检查文件是否存在:

if (File.Exists(@"C:\example\file.txt"))
{
    // 文件存在时的处理逻辑
}

创建目录:

Directory.CreateDirectory(@"C:\example\newfolder");

获取目录中的所有文件:

string[] files = Directory.GetFiles(@"C:\example");
foreach (string file in files)
{
    Console.WriteLine(file);
}

到此这篇关于C#中常见的文件处理操作小结的文章就介绍到这了,更多相关C#文件处理内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文