编写一基于Windows From的程序,实现对C盘根目录文件夹的遍历,打印文件夹信息。并新建一文件夹,在文件夹中创建一文本文件。C#
时间: 2024-10-16 20:14:05 浏览: 26
Node.js 使用递归实现遍历文件夹中所有文件
在C#中,你可以使用`Directory`和`File`类来实现这个功能。首先,你需要获取C盘根目录,并遍历其中的文件和子文件夹。以下是简单的步骤:
```csharp
using System;
using System.IO;
namespace CDriveTraversal
{
class Program
{
static void Main(string[] args)
{
// 获取C盘根目录路径
string rootDirectory = @"C:\";
// 遍历文件夹
TraverseDirectory(rootDirectory);
Console.WriteLine("After creating a folder and file:");
CreateFolderAndFile();
}
// 遍历目录并打印文件和文件夹信息
static void TraverseDirectory(string directoryPath)
{
try
{
DirectoryInfo dirInfo = new DirectoryInfo(directoryPath);
Console.WriteLine($"Directory: {dirInfo.FullName}");
Console.WriteLine($"Files: {dirInfo.GetFiles().Length}");
Console.WriteLine($"Folders: {dirInfo.GetDirectories().Length}");
foreach (FileInfo fileInfo in dirInfo.GetFiles())
{
Console.WriteLine($"File: {fileInfo.FullName}, Size: {fileInfo.Length} bytes");
}
foreach (DirectoryInfo subdir in dirInfo.GetDirectories())
{
TraverseDirectory(subdir.FullName);
}
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
}
// 创建新文件夹并在其中创建文本文件
static void CreateFolderAndFile()
{
string newFolderPath = @"C:\NewFolder";
if (!Directory.Exists(newFolderPath))
{
Directory.CreateDirectory(newFolderPath);
Console.WriteLine($"Created folder: {newFolderPath}");
}
string fileName = "Sample.txt";
string filePath = Path.Combine(newFolderPath, fileName);
using (StreamWriter writer = File.CreateText(filePath))
{
writer.WriteLine("This is a sample text file.");
Console.WriteLine($"Created file: {filePath}");
}
}
}
}
```
当你运行这个程序时,它会先遍历C盘根目录,显示文件和文件夹的信息,然后创建一个新的名为"NewFolder"的文件夹并在其中创建一个名为"Sample.txt"的文本文件。
阅读全文