C# Directory.EnumerateFiles 样例
时间: 2023-07-12 09:11:54 浏览: 45
下面是一个使用 `Directory.EnumerateFiles` 方法的简单示例,它将枚举指定目录中的所有文件并将它们输出到控制台上:
```csharp
using System;
using System.IO;
class Program
{
static void Main(string[] args)
{
string path = "C:\\MyFolder"; // 指定目录路径
// 枚举指定目录中的所有文件并将它们输出到控制台上
foreach (string file in Directory.EnumerateFiles(path))
{
Console.WriteLine(file);
}
Console.ReadLine();
}
}
```
在上面的示例中,我们使用 `Directory.EnumerateFiles` 方法来枚举 `C:\MyFolder` 目录中的所有文件,并将它们的完整路径输出到控制台上。你可以根据自己的需要修改路径和输出方式。
相关问题
c#通过用户名查看电脑回收站内容
以下是一个示例代码,可以通过用户名查看电脑回收站的内容。
```csharp
using System;
using System.IO;
using Microsoft.VisualBasic.FileIO;
class Program
{
static void Main(string[] args)
{
string username = "your_username"; // 要查询的用户名
string recycleBinPath = $@"C:\$Recycle.Bin\{GetUserSid(username)}";
if (!Directory.Exists(recycleBinPath))
{
Console.WriteLine($"Recycle bin for user {username} does not exist.");
return;
}
foreach (string file in Directory.EnumerateFiles(recycleBinPath, "*", SearchOption.AllDirectories))
{
FileSystemInfo info = new FileInfo(file);
Console.WriteLine($"Name: {info.Name}, Path: {info.FullName}");
}
Console.ReadLine();
}
static string GetUserSid(string username)
{
string sid = null;
try
{
NTAccount account = new NTAccount(username);
SecurityIdentifier identifier = (SecurityIdentifier)account.Translate(typeof(SecurityIdentifier));
sid = identifier.ToString();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
return sid;
}
}
```
在上面的代码中,您需要将 `your_username` 替换为要查询的用户名。代码使用 `GetUserSid` 方法来获取该用户的安全标识符 (SID)。然后,代码构建回收站的路径,并使用 `Directory.EnumerateFiles` 方法枚举所有的文件和文件夹,并打印它们的名称和路径。
请注意,此代码需要以管理员身份运行才能访问回收站目录。
public static IEnumerable<string> EnumerateFiles(string path, string searchPattern);如何使用
这是一个C#中的静态方法,用于获取指定目录中符合指定搜索模式的文件的路径。你可以按照以下步骤使用它:
1. 首先,确保你的代码中引用了System.IO命名空间,因为这个方法是在该命名空间下定义的。
2. 然后,通过调用该方法并传入两个参数:要搜索的目录的路径和搜索模式。例如,如果你想在D:\MyFiles目录中搜索所有扩展名为.txt的文件,可以这样调用该方法:
```
var files = Directory.EnumerateFiles("D:\\MyFiles", "*.txt");
```
3. 该方法会返回一个IEnumerable<string>类型的结果,其中包含了符合搜索模式的文件路径。你可以使用foreach循环遍历这个结果,或者将其转换为List<string>类型的列表。
例如,你可以这样遍历上述代码返回的结果:
```
foreach (var file in files)
{
Console.WriteLine(file);
}
```
这将输出D:\MyFiles目录中所有扩展名为.txt的文件的路径。