selecionador de archivos C#

Iniciado por shin_akuma, 8 Julio 2008, 01:16 AM

0 Miembros y 1 Visitante están viendo este tema.

shin_akuma

hola de nuevo amigos miren tengo un problema para barear

estoy intentado hacer una aplicacion la cual en una parte nesesita selecionar un archivo para ver su path abrirlo, guardarlo o eliminarlo ya saben un selecionador de archivos el problema es que no encuentro un codigo mas o menos desente que me ayude a resolver mi problema ya e buscado en google y msdn, pero a pesar de eso vi un code que mas o menos me convencion el problema es que compila bien pero cuando ejecuto el codigo por medio de un boton se traba y nisiquiera me arroja una excepcion


private void abrirToolStripMenuItem_Click(object sender, EventArgs e)
        {

            try
            {
                FileSystemWatcher watcher = new FileSystemWatcher();
               
                watcher.Path = @"C:\";

                // Setup things to be on the lookout for

                watcher.NotifyFilter = NotifyFilters.FileName;

                // Setup filter for specific file types

                watcher.Filter = "*.*";

                // Define event handlers

                watcher.Created += new FileSystemEventHandler(OnChanged);

                // Begin watching the directory

                watcher.EnableRaisingEvents = true;

                // Wait for user to quit program

                Console.WriteLine(@"Press q to quit");

                while (Console.Read() != 'q') ;
            }
            catch (Exception)
            {
                MessageBox.Show("La prueba fallo");
            }
        }

        private static void OnChanged(object source, FileSystemEventArgs e)
        {

        }


alguien tendra una idea de como hacer lo que quiero
El conocimiento es poder!!!

Saludos!!



MANULOMM

hola, estas un poco perdido, el componente que estas utilizando FileSystemWatcher, lo que hace es vigilar un directorio y reportar lo que pasa con el, lo que necesitas es obternet el directorio de un archivo en especifico, necesitas un OpenFileDialog asi:



//Haces un Using asi:
using System.Windows.Forms;

//Te Declaras un Objeto de Tipo OpenFileDialog
OpenFileDialog dialogo = new OpenFileDialog();

//para mostrar el cuadro de seleccion de archivo hacemos asi:
if (dialogo.ShowDialog() == DialogResult.OK)
{
    //solo si se selecciono un archivo y se oprime OK obtenemos el path.
   //para obtener el path llamas a FileName si es un archivo o a FileNames si son varios.
//Aqui un ejemplo de como mostrar el PATH.
    MessageBox.Show("El Path seleccionado es:" + dialogo.FileName);
}


Espero esto te sriva.

Atentamente,

Juan Manuel Lombana
Medellín - Colombia


shin_akuma

#2
disculpa la tardanza andaba algo ocupado pero gracias y si la verdad es que andaba perdido :xD

pero tengo otra duda como puedo incluir solamante archivos con extensiones como .exe o .txt ha y como setear archivos para abririlos o guardalos?



El conocimiento es poder!!!

Saludos!!



MANULOMM

#3
Hola, no se si te entendi bien, pero para decirle que solamente te deje ver achivos de cierta extensión te fijas en la propiedad Filter esta recib un string la llenas asi:


OpenFileDialog a = new OpenFileDialog();
a.Filter = "Archivos Texto|*.txt|Ejecutables|*.exe|Imagenes|*.jpg";


y asi te vas yendo.

El OpenFileDialog, es para abrir archivos pues este te engrega su ruta.
El SaveFileDialog es para guardar pues solo te entrega una ruta mas el nombre del nuevo archivo (El que le pones antes de darle guardar).

Atentamente,

Juan Manuel Lombana
Medellín - Colombia



warlock45

Ya que el tema es sobre seleccionar archivos, queria preguntar como podria hacer para seleccionar una carpeta y listar los archivos que contiene, como una especie de "dir" en consola, y luego guardar esa lita de archivos en un txt

si alguien me puede echar una mano
_______________________________________
"Gracias señor por darme sordera"...

       Beethoven tras leer las letras de regeaton.

SeniorX

A pesar de que buscando en google encuentras varios ejemplos, te dejo un codigo que usé en un programa:
string[] archivos = Directory.GetFiles(@"C:\");
            foreach (string ar in archivos)
            {
                Console.WriteLine(ar);
            }
            Console.ReadLine();


Bueno... tu solo tienes que cambiar la linea del writeline y hacer que la escriba en un archivo de texto, pero eso es trivial y hay varios ejemplos en google.

Suerte!
try {
     live();
}
catch (ShitHappensException ex) {
MessageBox.Show(ex.Solution)
}

Precaución: La programacion puede producir adiccion