查找以用户给出的变量开头的文件

时间:2015-12-30 12:17:40

标签: c#

        System.IO.FileInfo[] fileNames = dir.GetFiles("*check*.*");

这会返回任何带有名称检查的文件。但我想要的是返回那些以用户给出的字符串开头的文件。 实施例

string word = Console.Readkey();
System.IO.FileInfo[] fileNames = dir.GetFiles("*word*.*");

我试过这个

System.IO.FileInfo[] fileNames = dir.GetFiles("*"+word+"*".*");

但这不起作用

3 个答案:

答案 0 :(得分:4)

首先,Console.ReadKey()读取一个我认为您不打算这样做的密钥,因此将其更改为Console.ReadLine()

话虽这么说,如果你想使用变量word,你就不要把它放在字符串中。把它放在外面并与模式的其余部分连接或使用String.Format()

所以使用这段代码:

string word = Console.ReadLine();
System.IO.FileInfo[] fileNames = dir.GetFiles(String.Format("{0}*.*", word));

答案 1 :(得分:0)

你需要使用这个

public static string[] GetFiles(
    string path,
    string searchPattern
) 
来自Directory类的

方法。带有一个字符串参数的版本接受路径。

答案 2 :(得分:0)

System.IO.FileInfo[] fileNames = dir.GetFiles(string.Format("{0}*.*", word));