Está usted en Indice > Construcción > Lenguajes > ASP > Lecciones y Paso a Paso > ¿Cómo subir un archivo con ASP.NET?
Construcción
Maletín
Utilidades
Cursos
Promoción
Rentabilidad
Zona Novatos
Foros
Acceso a tu cuenta

¿Cómo subir un archivo con ASP.NET?

En el namespace System.Web.UI.HtmlControls tenemos el control HtmlInputFile que cumple con las funcionalidades necesarias para poder subir un archivo ya sea de texto o binario.

Este control trabaja con el tipo de codificación multipart/form-data, veamos el ejemplo:

La primera parte se compone de la página HTMl que se le presenta al usuario para que pueda seleccionar el archivo a subir.

Se define el formulario con el atributo "enctype" correspondiente:

<form id="Form1" method="post" enctype="multipart/form-data" runat="server">

Colocamos la etiqueta HTML que permita seleccionar el archivo:

<INPUT id="File1" type="file" name="File1" runat="server" >
<DIV>Seleccione el Archivo a Enviar:</DIV>
<asp:Label id="Mensaje" runat="server" ></asp:Label>

Y por último el botón para confirmar el envío:

<asp:Button id="cmdEnviar" runat="server" Text="Enviar"></asp:Button>
</form>

Esta segunda parte comprende el código necesario para poder grabar el archivo enviado en el directorio correspondiente.

'Importamos System.IO
Imports System.IO

Public Class Upload
Inherits System.Web.UI.Page
Protected WithEvents Mensaje As System.Web.UI.WebControls.Label
Protected WithEvents cmdEnviar As System.Web.UI.WebControls.Button
Protected WithEvents File1 As System.Web.UI.HtmlControls.HtmlInputFile

Definimos el directorio destino del archivo de la siguiente manera, en el control File1, hay un objeto de la clase HTTPPostedFile que entre algunas de las propiedades que tiene es la del nombre del archivo:

Private Sub cmdEnviar_Click(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles cmdEnviar.Click
Dim Destino As String = "E:InetpubwwwrootUpload" & _
Path.GetFileName(File1.PostedFile.FileName)

Como paso siguiente, con un simple paso, se graba el archivo en el destino definido. Es importante recordar de que el usuario que se este impersonando en ASP.NET (ya sea anónimo u otro) tenga permiso para poder escribir en el directorio destino.

File1.PostedFile.SaveAs(Destino)

En el paso final, se coloca en una etiqueta la cantidad de bytes que contiene el archivo enviado.

Mensaje.Text = "Su archivo ha sido cargado en : <b>" & Destino & _
"</b><br>Tamaño: " & File1.PostedFile.ContentLength() & " bytes."
End Sub





Autor: Microsoft
http://www.microsoft.com/spanish/msdn/comunidad/mtj.net/voices/art39.asp

Usuarios que han visto este tema también han visto...

- SQL Injection en ASP
- Agregar contenido mediante un intervalo de texto en ASP
- Recorrido por todas las unidades que forman parte del sistema de archivos de un servidor ASP, mostrando sus principales propiedades.
- Paso de parámetros a funciones con ASP
- Redirección de vuelta después de un Login en ASP


Versión imprimible - Versión imprimible de este documento
Enviar e-mail - Enviar por e-mail este documento
Publicidad

Información legal | Política de Privacidad | Contacte con nosotros

Otro proyecto de Factoría de Internet. Copyright© 2003-2008 Factoría de Internet S.L.. Todos los derechos reservados.


Página generada el 23-11-2008 a las 20:20:29