List the contents of a folder and link to each file

3.4 (5 votes)

Iterating the contents of a folder is straightforward using classes from System.IO, and listing them as links to the actual file just requires a bit of html added to each file name.

[C#]
using System.IO;
using System.Text;

DirectoryInfo dir;
StringBuilder sb  = new StringBuilder();
FileInfo[] files;

dir = new DirectoryInfo(Server.MapPath("."));
files = dir.GetFiles();
foreach (FileInfo f in files)
{
  sb.Append("<a href=\"" + f.Name.ToString() + "\">");
  sb.Append(f.Name.ToString() + "</a><br />");
}
Literal1.Text = sb.ToString();
[VB]
Imports System.Text
Imports System.IO

Dim dir As DirectoryInfo
Dim sb As StringBuilder = New StringBuilder()
Dim files() As FileInfo 'array of fileinfo objects

dir = New DirectoryInfo(Server.MapPath("."))

files = dir.GetFiles()
For Each f As FileInfo In files
  sb.Append("lt;a href=""" + f.Name.ToString() + """>")
  sb.Append(f.Name.ToString() + "lt;/a>lt;br />")
Next
Literal1.Text = sb.ToString()

Date Posted:
Last Updated:
Posted by:
Total Views to date: 22055

2 Comments

- Alan Fisher

It looks like Literal1 is not defined.

Literal1.Text = sb.ToString();

- Mike

@Alan,

Yeah - you need to add a Literal control to your aspx file (which isn't featured in the article).

Recent Comments

Ghazanfar 30/01/2016 06:43
In response to Getting Started with ASP.NET MVC 5 using Visual Basic
Nice working. Please keep it up to convert csharp code into vb.net. Its very helpful for vb...

sara 29/01/2016 09:39
In response to Simple Login and Redirect for ASP.NET and Access
Hi there, I am trying to validate and check for inputs entered. When I don't enter any inputs and...

Martin Thatcher 28/01/2016 17:28
In response to MVC 5 with EF 6 in Visual Basic - Advanced Entity Framework Scenarios
A small typo I think. In the code section that begins Function Index(ByVal SelectedDepartment As As...

Suresh_thefame 28/01/2016 08:03
In response to Sessions and Shopping Carts
Helpful....

Andrey Kurdyumov 28/01/2016 05:47
In response to ASP.NET 5: Uploading files with ASP.NET MVC 6
@Lee IFormFile has OpenReadStream(): Stream method...

Alisa 27/01/2016 18:37
In response to A Better Way To Export Gridviews To Excel
Thanks for this example! I am also asking about the date fields having to be re-formatted when the a...

Dan Buckley 27/01/2016 00:47
In response to What ASP.NET Can And Cannot Do
New to all things programming, this was very helpful and clear. Please write more....

satyabrata 26/01/2016 16:16
In response to Request.Form Is Empty When Posting To ASPX Page
Thank you....

david sanchez 26/01/2016 09:51
In response to ASP.NET MVC 5 with EF 6 - Working With Files
Thanks! This line " <img src="~/images/@Model.FilePaths.First(f => f.FileType == alt="" />" an...

Bryon 25/01/2016 15:06
In response to Windows Authentication With ASP.NET Web Pages
Was hoping this would help solve the issues I'm having. Then I saw the dates and new it was too old....