Un file manager con ASP.NET

di Daniele Bochicchio, in ASP.NET, System.IO, C#,

Costruire un piccolo file manager sfruttando ASP.NET è un'operazione che richiede poco tempo. In pratica si tratta di sfruttare al meglio le classi DirectoryInfo e FileInfo, che consentono rispettivamente di avere informazioni su directory e file di un determinato percorso:

<%@ Import namespace="System.IO"%>
<SCRIPT RUNAT="SERVER" LANGUAGE="C#">
void Page_Load()
{
  // ricava il path
  string path = Request["path"];
  if (path == null)
    path = "/";

  // replace di caratteri pericolosi
  path = path.Replace("..", String.Empty).Replace("./", "/").Trim();

  DirectoryInfo dir = new DirectoryInfo(Server.MapPath(path));

  // lista delle directory - costruisco il link
  foreach (DirectoryInfo localDir in dir.GetDirectories())
    directories.Text += "<li>" + String.Format("<a href=\"filemanager.aspx?path={1}{0}/\">{0}</a>", localDir.Name, path);;

  // lista dei files
  foreach (FileInfo localFile in dir.GetFiles())
    files.Text += "<li>" + localFile.Name;
}
</SCRIPT>
Directory:<ul><asp:literal id="directories" runat="server" /></ul>
Files:<ul><asp:literal id="files" runat="server" /></ul>

Lo script costruisce anche i link in modo che sia possibile navigare, senza nessun limite, all'interno delle sottodirectory presenti e rappresenta un ottimo sistema per costruire semplici ma efficaci file manager.

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi