這篇文章主要為大家詳細介紹了C# 遍曆檔案夾及子目錄下所有圖片的相關資料,具有一定的參考價值,感興趣的小夥伴們可以參考一下
要求:取指定目錄下面的所有圖片,以表格的型式展示並顯示該圖片的相對路徑。
服務端代碼:
public partial class ViewIcon : System.Web.UI.Page { JArray ja = new JArray(); //定義一個數組 public string info = string.Empty; protected void Page_Load(object sender, EventArgs e) { var path1 = System.AppDomain.CurrentDomain.BaseDirectory;//擷取程式集目錄 string path = Path.Combine(path1, "Image", "menu");//Path.Combine 將3個字串組合成路徑 var images = Directory.GetFiles(path, ".", SearchOption.AllDirectories).Where(s => s.EndsWith(".png") || s.EndsWith(".jpg") || s.EndsWith(".gif")); //images = Directory.GetFiles(path, "*.png|*.jpg", SearchOption.AllDirectories); //Directory.GetFiles 返回指定目錄的檔案路徑 SearchOption.AllDirectories 指定搜尋目前的目錄及子目錄 //遍曆string 型 images數組 foreach (var i in images){ var str = i.Replace(path1, "");//擷取相對路徑 var path2 = str.Replace("\\", "/");將字元“\\”轉換為“/” ja.Add(path2); } info = Newtonsoft.Json.JsonConvert.SerializeObject(ja);//序列化為String } }
前端代碼:
<script type="text/javascript"> $(function(){ var images = <%=info%>; var list = []; list.push("<table>"); list.push("<thead>"); list.push("<tr>"); list.push("<td>表徵圖</td>"); list.push("<td>路徑</td>"); list.push("<td>表徵圖</td>"); list.push("<td>路徑</td>"); list.push("</tr>"); list.push("</thead>"); list.push("<tbody>"); $.each(images, function (a,b) { if((a+1)%2==0){ list.push("<td>"+"<img width='50' height='50' src = '../../" + b + "'></td>"); list.push("<td>"+b+"</td>"); list.push("</tr>"); } if((a+1)%2!=0){ list.push("<tr>"); list.push("<td>"+"<img width='50' height='50' src = '../../" + b + "'></td>"); list.push("<td>"+b+"</td>"); } }) list.push("</tbody>"); list.push("</table>"); list.push("<br>"); var images = list.join(""); $("#imgs").append(images); })</script>
如下: