La manipulación de archivos, por decirlo de alguna forma, me permite obtener lista de archivos que hay en una carpeta, así como realizar operaciones con ellos, tales como renombrar, comprobar si existen, borrarlos, etc.
Para ello se usa la clase System.IO. Claro, verdad.
Un ejemplo por pasos, que luego dicen por ahí que copio y pego.
En una página aspx en blanco poner los siguientes controles:
-ListBox, que se llamará ListBox1 y con la propiedad AutoPostBack = True.
-Button, que se llamará Button1, y con Text="Subir Fichero"
-Otro Button, que se llamará Button2, y con Text="Borrar"
-FileUpload, que se llamará FileUpload1.
-Image, que se llamará Image1.
Ni que decir tiene que los controles son los que hay en la barra de herramientas estándar y no los HTML.
A escribir o copiar y pegar (mi opción), depende de lo perro que seas.
/1/ En declaraciones generales.
Imports System
Imports System.IO
si no sirve de nada lo que escribamos a continuación.
/2/ Evento Load de la página.
If Not Page.IsPostBack Then
Dim DirAct As New DirectoryInfo("c:\Inetpub\wwwroot\intranet\Repositorio")
' Crear un array que contenga los archivos del directorio establecido
Dim Arc As FileInfo() = DirAct.GetFiles()
Dim ArcTmp As FileInfo
For Each ArcTmp In Arc
ListBox1.Items.Add(ArcTmp.Name)
Next ArcTmp
End If
/3/ Evento Click de Buttton1.
Dim NombreArchivo As String
Dim RutaRepositorio As String
RutaRepositorio = "c:\Inetpub\wwwroot\intranet\Repositorio\"
If (FileUpload1.HasFile) Then
NombreArchivo = FileUpload1.FileName
RutaRepositorio += NombreArchivo
FileUpload1.SaveAs(RutaRepositorio)
ListBox1.Items.Add(NombreArchivo)
End If
/4/ Evento Click de Buttton2.
Dim Arc As FileInfoPara que esto funcione correctamente hay que agregar y asignar permiso de Modificación al usuario ASPNET de Windows.
If ListBox1.SelectedIndex <> -1 Then
Arc = New FileInfo("c:\Inetpub\wwwroot\intranet\Repositorio\" & ListBox1.SelectedItem.ToString)
Arc.Delete()
ListBox1.Items.Remove(ListBox1.SelectedValue)
End If
/5/ Evento SelectedIndexChanged de ListBox1
Image1.ImageUrl = "~/Repositorio/" & ListBox1.SelectedItem.ToString
Image1.Width = 300
Ahora, F5 (Ejecutar) y haces click en examinar y coges archivos. Y luego click en subir, deberán aparecer en el listbox y subidos en el servidor donde se esté ejecutando la página. Puede que haya que dar algún permiso más que se me haya pasado, pero mañana es festivo. Así que el lunes lo releo.
Que no te gusta lo que has subido, click en Borrar. ¡¡ Impresionante !!
Si has subido imágenes y las selecciones deben aparecer por ahí en tu página,ya depende como me hayas puesto los controles.
Algunos detalles últimos. Por lo que veo no sobreescribe al subir los ficheros, aunque yo lo pinto en el listbox.
De entrada esto funciona, y nos aproxima a esta clase. Se puede depurar más y mejorar, pero ya no sería tan claro.
Nos vemos.
No hay comentarios:
Publicar un comentario