C#中,使用 DirectoryInfo 的 GetFiles 提取文件,如何提取多种文件
现在能提到某种指定的文件如GetFiles("*.doc");但是如果想同时提取多种类型的如何做呢,例如:doctxtrarzip试过GetFiles("*.doc|*....
现在能提到某种指定的文件 如 GetFiles("*.doc");
但是如果想同时提取多种类型的如何做呢,例如:doc txt rar zip
试过 GetFiles("*.doc|*.txt|*.zip|*.rar");
但是提示 路径中具有非法字符
请问如何解决 展开
但是如果想同时提取多种类型的如何做呢,例如:doc txt rar zip
试过 GetFiles("*.doc|*.txt|*.zip|*.rar");
但是提示 路径中具有非法字符
请问如何解决 展开
4个回答
展开全部
DirectoryInfo的GetFiles() 一次只能传递一种格式的参数
/// <summary>
/// C#获取一种指定类型文件
/// </summary>
/// <param name="filePath">路径</param>
private void GetFiles(string filePath)
{
DirectoryInfo di = new DirectoryInfo(filePath);
FileInfo[] afi = di.GetFiles("*.dat");
}
如果要获取多种格式文件请使用以下方法:
/// <summary>
/// C#获取指定目录下多种指定类型文件
/// </summary>
/// <param name="filePath">路径</param>
public List<string> GetVideoFiles(string filePath)
{
DirectoryInfo di = new DirectoryInfo(filePath);
FileInfo[] files= di.GetFiles();
string fileName;
List<string> list = new List<string>();
for (int i = 0; i < files.Length; i++)
{
fileName = files[i].Name.ToLower();
if (fileName.EndsWith(".gif") || fileName.EndsWith(".jpg"))
{
list.Add(fileName);
}
}
return list;
}
/// <summary>
/// C#获取一种指定类型文件
/// </summary>
/// <param name="filePath">路径</param>
private void GetFiles(string filePath)
{
DirectoryInfo di = new DirectoryInfo(filePath);
FileInfo[] afi = di.GetFiles("*.dat");
}
如果要获取多种格式文件请使用以下方法:
/// <summary>
/// C#获取指定目录下多种指定类型文件
/// </summary>
/// <param name="filePath">路径</param>
public List<string> GetVideoFiles(string filePath)
{
DirectoryInfo di = new DirectoryInfo(filePath);
FileInfo[] files= di.GetFiles();
string fileName;
List<string> list = new List<string>();
for (int i = 0; i < files.Length; i++)
{
fileName = files[i].Name.ToLower();
if (fileName.EndsWith(".gif") || fileName.EndsWith(".jpg"))
{
list.Add(fileName);
}
}
return list;
}
展开全部
通过遍历方式获取,遍历中判断文件格式是否包含在".doc|.txt|.zip|.rar"即可
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
只能一个个读取,比如:
System.IO.FileInfo[] fimore = di.GetFiles("*.jpg");
...
fimore = di.GetFiles("*.bmp");
System.IO.FileInfo[] fimore = di.GetFiles("*.jpg");
...
fimore = di.GetFiles("*.bmp");
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没有内置这个功能,你可以自己写一个
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询