Spi*_*rls 1 .net c# asp.net directory
我想在特定目录中返回图像文件.我想像这样创建图像路径
string[] ImageNames = Directory.GetFiles(path);
string tds="";
for (int i = 0; i < ImageNames.Length; i++)
{
tds += "<tr> <td> <img href=/Articles/ArticleImageStore/'" + ImageNames[i] + "' width='64' height='64'></img></tr> </td>";
}
Run Code Online (Sandbox Code Playgroud)
但它返回磁盘上文件的物理路径.我该怎么办?
你可以使用Path.GetFileName:
string[] ImageNames = Directory.GetFiles(path)
.Select(p => Path.GetFileName(p)).ToArray();
Run Code Online (Sandbox Code Playgroud)
这将生成一个仅包含文件名称的列表.
而不是使用Directory我会使用的类,DirectoryInfo那么你可以这样做;
string[] fNames = new DirectoryInfo(dirPath).GetFiles("*.png").Select(x => x.FileName).ToArray();
Run Code Online (Sandbox Code Playgroud)
DirectoryInfoGetFiles的版本返回 FileInfo 对象而不是文件路径作为字符串,因此您可以对结果执行更多操作。我碰巧有一个选择,通过为 GetFiles 返回的每个 FileInfo 实例投影一个 FileName 来取消它,但是如果您需要对文件执行更多操作,您可以删除它,然后循环遍历 FileInfo 对象。
另外,我正在使用一个重载,它有一个模式,可以很容易地忽略你的非图像文件。
DirectoryInfo 文档;http://msdn.microsoft.com/en-us/library/8he88b63.aspx
| 归档时间: |
|
| 查看次数: |
4226 次 |
| 最近记录: |