Meli nos escribe esto:
estoy empezando con WPF y no se como poder transportar o copiar diferentes archivos o musica o videos a nuestro programa
Una pregunta que a mas de uno le habrá roto la cabeza, sin embargo, la solución es muy sencilla.
En primer lugar, he creado una solución WPF muy sencilla, con un botón, el cual, al dar click sobre él, como en un ejemplo anterior, creamos un OpenFileDialog y le ponemos algunas propiedades
OpenFileDialog fd = new OpenFileDialog(); fd.Filter = "Archivos de imágen (.jpg)|*.jpg|All Files (*.*)|*.*"; fd.Multiselect = false;
Posteriormente, checamos si el usuario ha hecho click sobre el botón ok, una vez seleccionado su archivo:
bool? checarOK = fd.ShowDialog(); if (checarOK == true) {
Si se ha seleccionado un archivo, y posteriormente clickeado sobre OK, recuperaremos la ruta del archivo:
string archivoOrigen = fd.FileName;
Luego, especificaremos la ruta del directorio al cual queremos enviar nuestros archivos, si te has dado cuenta, muchos programas utilizan alguna carpeta sobre Documents, no sobre la aplicación, en nuestro caso, creamos la carpeta sobre Public:
string rutaDestino = @"C:\Users\Public\CarpetaPrueba\SubDir";
Posteriormente, para crear un nuevo archivo, combinaremos la ruta del destino, con el nombre del archivo que hemos obtenido del OpenFileDialog:
string archivoDestino = System.IO.Path.Combine(rutaDestino, fd.SafeFileName);
En caso de que sea la primera vez que se ejecute la aplicación, y no exista el folder de Subdir, lo crearemos:
if(!System.IO.Directory.Exists(rutaDestino)) { System.IO.Directory.CreateDirectory(rutaDestino); }
Y finalmente, copiamos el archivo:
System.IO.File.Copy (archivoOrigen, archivoDestino, true);
Por si no quedó claro algún paso, les paso el link de la solución:
http://cid-2c11b62be5eb284d.skydrive.live.com/self.aspx/P%c3%bablico/Proyectos%20Blog/CopyFiles.zip
Salu2
Héctor Uriel Pérez Rojas
disculpa y si quisiera copiarlo a una carpeta de red, como tendria que hacerse?. gracias
Hola Oscar:
Hasta ahorita ví este comentario, una disculpa, y eso se puede resolver, poniendo la ruta de la carpeta de red del tipo “\ruta”.
Salu2 😉
Hola, muy bueno este post de verdad. Pero me podrias ayudar con algo cuando trato de guarda la imagen(archivo), en una carpeta me lanza un error diciendome que no se puede accesar a la ruta.
Muchas gracias y plis ayudame con la preguntica!
Hola Anthony, pon el mensaje de error completo y lo checamos vale?
Salu2.
Excelente!
Me sirvio muchisimo, lo unico que falto son las referencias, tuve que agregar las siguientes:
using System.IO;
using Microsoft.Win32;
Eso sería, saludos!
oie al pasarlo al visual c# 2012 me marca un error en bool? chec…
espero me puedas ayudar lo mas pronto poible
Hola, muy buen codigo, pero una pregunta, con un foreach como podría copiar x número de archivos