我想在listbox
中显示我的所有图片名称。我试图弄清楚如何检索文件名。
我试过这个
protected void Page_Load(object sender, EventArgs e)
{
string u = Request.Url.AbsoluteUri.ToString();
string serverPath = u.Substring(0, u.LastIndexOf("/")) + "/UBOimages";
Label1.Text = serverPath;
DirectoryInfo dirInfo = new DirectoryInfo(Server.MapPath("~/UBOimages"));
//FileInfo[] fileInfo = dirInfo.GetFiles();
Label2.Text = dirInfo.ToString();
}
但标签中的结果如下:
http://localhost:49170/UBOimages
C:\Users\John\Documents\UBO\uboWebCustomer\HuronWood\HuronWood\UBOimages
当加载到服务器上时,此页面将显示错误,因为它不喜欢dirInfo路径。 从文件夹(例如图像文件夹)中检索所有文件的正确方法是什么
答案 0 :(得分:3)
DirectoryInfo dirInfo = new DirectoryInfo(Server.MapPath("~/UBOimages"));
FileInfo[] fileInfo = dirInfo.GetFiles("*.*", SearchOption.AllDirectories);
循环遍历此fileinfo数组或将其绑定到任何Gridview或listview。
答案 1 :(得分:1)
如果您需要获取名为“Data”的文件夹中的所有文件,只需将其编码为
string[] Documents = System.IO.Directory.GetFiles("../../Data/");
现在'Documents'包含'Data'文件夹中文件的完整对象名称数组。
答案 2 :(得分:1)
System.IO.DirectoryInfo.GetFiles
将帮助您获取给定目录的所有文件。
DirectoryInfo.ToString
不用于列出目录文件。它将给出当前DirectoryInfo
对象的字符串表示,您会看到在这种情况下它是目录路径。
答案 3 :(得分:0)
@我正在使用上面的答案根据你的问题编写我的代码!!!
Using System.IO
protected void ListFiles()
{
const string MY_DIRECTORY = "/MyDirectory/";
string strFile = null;
foreach (string s in Directory.GetFiles(Server.MapPath(MY_DIRECTORY), "*.*")) {
strFile = s.Substring(s.LastIndexOf("\\") + 1);
ListBox1.Items.Add(strFile);
}
希望这有帮助!!!