Foros del Web » Programando para Internet » ASPX (.net) »

Guardar archivo sin FileUpLoad

Estas en el tema de Guardar archivo sin FileUpLoad en el foro de ASPX (.net) en Foros del Web. Hola foro estoy en un gran problema, quiero almacenar en mi servidor un archivo y la ruta la tengo en un textBox,. Para obtener la ...
  #1 (permalink)  
Antiguo 12/03/2010, 09:27
 
Fecha de Ingreso: enero-2010
Mensajes: 31
Antigüedad: 14 años, 3 meses
Puntos: 0
Exclamación Guardar archivo sin FileUpLoad

Hola foro estoy en un gran problema, quiero almacenar en mi servidor un archivo y la ruta la tengo en un textBox,.
Para obtener la ruta del archivo utilizo un FileUpload y le egregue un evento OnChange para almacenar la ruta del archivo por los postback y ahora quiero almacenar en disco ese archivo como le hago?

Mas explicito: tengo "C:\Documents and Settings\Administrador\HolaMundo.txt" ese archivo(HolaMundo.txt) lo quiero almacenar en disco

Es urgente!!! agradesco su ayuda :D

Última edición por ruben_zer0; 12/03/2010 a las 10:22
  #2 (permalink)  
Antiguo 12/03/2010, 11:04
Avatar de AWesker  
Fecha de Ingreso: octubre-2008
Mensajes: 177
Antigüedad: 15 años, 6 meses
Puntos: 27
Respuesta: Guardar archivo sin FileUpLoad

Puedes hacerlo de la siguiente forma (este ejemplo funciona con una carpeta que debe estar en la raíz del proyecto o solución):

Código:
 
string Ruta = Server.MapPath("~/Archivos/"); //Almacenará el archivo en una Carpeta llamada Archivos
//FU_Archivo = nombre del FileUpload
//Lbl_Error = Label para mostrar el mensaje de error
string NombreArchivo = FU_Archivo.FileName; //Obtenemos el nombre del archivo
string RutaARevisar = Ruta + NombreArchivo;
if (System.IO.File.Exists(RutaARevisar))//Verificamos que exista por seguridad
{
        int Contador = 2; //Variable para cambiar el nombre el caso que exista
        while (System.IO.File.Exists(RutaARevisar)) //Lazo que se ejecuta mientras exista un archivo con un nombre igual 
        {
              NombreArchivoTemp = Contador.ToString() + NombreArchivo; //Nombre que se le da de forma temporal
              RutaARevisar = Ruta + NombreArchivoTemp; //Asignamos la ruta completa concatenado con el nombre
              Contador++;
        }
              Lbl_Error.Text = "Ya existe el archivo. Se guardó con el nombre " +  NombreArchivo;
              FU_Archivo.SaveAs(RutaARevisar);
}
Es un ejemplo que puede ser optimizado, pero lo escribí así para que tengas más claro el proceso que se emplea. Ojalá te sirva, esta escrito en C#. No lo he probado, pero creo que funciona. Si no es así, avisame si hay algún error.

Una cosa más... deberías probar el evento OnChange porque creo que solo funciona con Internet Explorer.

Saludos...
  #3 (permalink)  
Antiguo 12/03/2010, 12:12
 
Fecha de Ingreso: enero-2010
Mensajes: 31
Antigüedad: 14 años, 3 meses
Puntos: 0
De acuerdo Respuesta: Guardar archivo sin FileUpLoad

Cita:
Iniciado por AWesker Ver Mensaje
Puedes hacerlo de la siguiente forma (este ejemplo funciona con una carpeta que debe estar en la raíz del proyecto o solución):

Código:
 
string Ruta = Server.MapPath("~/Archivos/"); //Almacenará el archivo en una Carpeta llamada Archivos
//FU_Archivo = nombre del FileUpload
//Lbl_Error = Label para mostrar el mensaje de error
string NombreArchivo = FU_Archivo.FileName; //Obtenemos el nombre del archivo
string RutaARevisar = Ruta + NombreArchivo;
if (System.IO.File.Exists(RutaARevisar))//Verificamos que exista por seguridad
{
        int Contador = 2; //Variable para cambiar el nombre el caso que exista
        while (System.IO.File.Exists(RutaARevisar)) //Lazo que se ejecuta mientras exista un archivo con un nombre igual 
        {
              NombreArchivoTemp = Contador.ToString() + NombreArchivo; //Nombre que se le da de forma temporal
              RutaARevisar = Ruta + NombreArchivoTemp; //Asignamos la ruta completa concatenado con el nombre
              Contador++;
        }
              Lbl_Error.Text = "Ya existe el archivo. Se guardó con el nombre " +  NombreArchivo;
              FU_Archivo.SaveAs(RutaARevisar);
}
Es un ejemplo que puede ser optimizado, pero lo escribí así para que tengas más claro el proceso que se emplea. Ojalá te sirva, esta escrito en C#. No lo he probado, pero creo que funciona. Si no es así, avisame si hay algún error.

Una cosa más... deberías probar el evento OnChange porque creo que solo funciona con Internet Explorer.

Saludos...
Si de hecho es la respuesta
solamente asi:

FU_Archivo.SaveAs(RutaARevisar);

despues de muchos intentos fue lo mas facil del mundo!!! y coincidimos con la respuesta!!
Gracias por la ayuda

Última edición por ruben_zer0; 12/03/2010 a las 14:01

Etiquetas: fileupload, aspx
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:25.