Foros del Web » Programación para mayores de 30 ;) » .NET »

¿Como copiar un archivo a otro directorio con una ruta relativa?

Estas en el tema de ¿Como copiar un archivo a otro directorio con una ruta relativa? en el foro de .NET en Foros del Web. Hola a todos!!!! Intento copiar un archivo desde su ruta original, al directorio de imagenes de mi programa, pero no se como hacer para poder ...
  #1 (permalink)  
Antiguo 09/02/2010, 09:26
 
Fecha de Ingreso: diciembre-2007
Mensajes: 20
Antigüedad: 17 años
Puntos: 0
¿Como copiar un archivo a otro directorio con una ruta relativa?

Hola a todos!!!!

Intento copiar un archivo desde su ruta original, al directorio de imagenes de mi programa, pero no se como hacer para poder poner una ruta relativa. Me explico con el codigo:


Código:
My.Computer.FileSystem.CopyFile(file, _
"Imagenes\prueba2.jpg", _
FileIO.UIOption.AllDialogs, _
FileIO.UICancelOption.DoNothing)"file" es la direccion donde se encuentra el archivo original.
Y la direccion de abajo es donde quiero que se guarde la copia.
El problema es que si escribo la dirección asi, tal cual está, me crea la carpeta Imagenes con el archivo "prueba2.jpg" en el directorio original del archivo.
Y si escribo esta otra "\Imagenes\prueba2.jpg" me crea la carpeta Imagenes en el directorio raiz C:\.

Lo cual me obliga a escribir la direccion entera donde quiero que se guarde la imagen, por ejemplo (C:\Archivos de programa\MiPrograma\Imagenes\prueba2.jpg), y eso dejaria de funcionar en el momento en el que cambiase el programa de directorio.

¿Sabeis alguna forma de solucionar esto?

Gracias.
  #2 (permalink)  
Antiguo 09/02/2010, 11:20
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: ¿Como copiar un archivo a otro directorio con una ruta relativa?

Application.StartupPath(), hasta VB.Net 2008 devuelve la ruta completa donde se inició la aplicación. Si la carpeta donde está "\Imagenes" es esa, lo único que tienes que hacer es tomar su valor y agregarlo lo que necesites:
Código vb.net:
Ver original
  1. Dim oFile as string = Application.StartupPath() & "\Imagenes\" & archivo
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 09/02/2010, 14:14
 
Fecha de Ingreso: diciembre-2007
Mensajes: 20
Antigüedad: 17 años
Puntos: 0
Respuesta: ¿Como copiar un archivo a otro directorio con una ruta relativa?

Gracias "gnzsoloyo" al final he encontrado la solución con algo parecido.

Dim MyFolder As String = My.Application.Info.DirectoryPath

Tanto lo que has puesto tu, como lo que he puesto yo funciona. ¿Son iguales?

O existe alguna diferencia entre utilizar una forma o la otra.

Gracias por responder tan pronto.
  #4 (permalink)  
Antiguo 09/02/2010, 15:00
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: ¿Como copiar un archivo a otro directorio con una ruta relativa?

Son equivalentes.
Probablemente la que te estoy poniendo sea un poco más portable a otras versiones, pero para el caso es igual.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: copiar, directorio, relativa, ruta
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 01:01.