当前位置:编程学习 > C#/ASP.NET >>

关于DataList读取目录下面的图片路径,并显示出来的问题.谢谢!(附读取路径的代码)

大家好,请问怎样利用DataList读取目录下面的图片路径,并显示出来呢?以下是我读取路径的代码:

//读取路径的代码
System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(Server.MapPath("~/Photo"));
System.IO.FileInfo[] fs = dir.GetFiles("*.jpg");
foreach (System.IO.FileInfo f in fs)
{
Response.Write(f.FullName + " <BR> ");
}

//显示一张图片代码
        System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(Server.MapPath("~/Photo"));
        System.IO.FileInfo[] fs = dir.GetFiles("*.jpg");
        foreach (System.IO.FileInfo f in fs)
        {
            Response.Write(f.FullName + " <BR> ");
            Image1.ImageUrl = "~/Photo/" + f.Name;
        }

在网上搜索到的资料都是在数据库里面读取的。哪怎样利用DataList把目录下面所有图片都显示出来呢?请指教,感谢! --------------------编程问答-------------------- 有时间的话,值得参考:

http://blog.csdn.net/insus/archive/2008/01/20/2055030.aspx --------------------编程问答-------------------- DataList Item项里放一个Image1就是了! --------------------编程问答--------------------
引用 2 楼 tautaulee 的回复:
DataList Item项里放一个Image1就是了!


具体怎样? --------------------编程问答--------------------

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="DataList.aspx.cs" Inherits="DataList" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>无标题页</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <asp:DataList ID='dl' runat="server">
    <ItemTemplate>
    <img src='<%#Eval("url") %>' />
    </ItemTemplate>
    </asp:DataList>
    </div>
    </form>
</body>
</html>

--------------------编程问答--------------------

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class DataList : System.Web.UI.Page
{
    private DataTable getDataTable()
    {
        DataTable dt = new DataTable();
        dt.Columns.Add(new System.Data.DataColumn("url", typeof(System.String)));
        System.Data.DataRow dr;
        System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(@"E:\pic");
        System.IO.FileInfo[] fs = dir.GetFiles("*.gif");
        foreach (System.IO.FileInfo f in fs)
        {
            dr = dt.NewRow();
            dr[0] = f.FullName;
            dt.Rows.Add(dr);            
        }

        return dt;
    }

    protected void Page_Load(object sender, EventArgs e)
    {

        dl.DataSource = getDataTable();
        dl.DataBind();
    }
}

--------------------编程问答--------------------
引用 5 楼 Sandy945 的回复:
C# code
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class DataList : System.Web.UI.Page
{
    private DataTable getDataTable()
    {
        DataTab…




显示不出哦,只显示一个图片框,里面没有图像. --------------------编程问答-------------------- 你把生成的html代码贴一下,估计是路径不对 --------------------编程问答-------------------- 可以显示了,但是,如果我找查的目录下面还有子目录呢?应该怎么做?我有一段代码,是可以查找子目录的.那怎样和Sandy945大哥的整合在一起呢?如下:

public void FindFile(string dir)                           //参数为指定的目录   
{
//在指定目录及子目录下查找文件,在listBox1中列出子目录及文件   
DirectoryInfo Dir = new DirectoryInfo(dir);
try
{
foreach (DirectoryInfo d in Dir.GetDirectories())     //查找子目录     
{
FindFile(Dir + d.ToString() + "\\");
//listBox1.Items.Add(Dir + d.ToString() + "\\");       //listBox1中填加目录名   
}
foreach (FileInfo f in Dir.GetFiles("*.jpg"))             //查找文件   
{
listBox1.Items.Add(Dir + f.ToString());     //listBox1中填加文件名   
}
}

//------------------------------------------------------------------------

protected void Button1_Click(object sender, EventArgs e)
{
string currentdir = "C:\\";     //搜索的目录   
if (currentdir[currentdir.Length - 1] != '\\')   //非根目录   
currentdir += "\\";
FindFile(currentdir);     //调用查找文件函数  
}
catch (Exception e)
{
      Reponse.write("error!")      
}

}   --------------------编程问答-------------------- 其实,我最终的目的是输入一个文件名(图片格式),之后搜索出整个目录(包含子目录)的所有对应的图片,再显示在网页上面.谁帮帮忙呢?感谢感谢!
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,