2009-09-17 17 views
0

Je crée un petit séparateur de fichiers, et j'ai déjà procédé au fractionnement. Maintenant j'ai besoin de compléter le menuisier.Obtention des chemins de fichier de chaque fichier du dossier X

Je cette méthode:

public static void juntarArchivo(string[] Cortes, string CarpetaDestino) 
     { 
      string Nombre = ExtraerNombre(Cortes[0]); 
      int CantidadDeCortes = Cortes.Length; 

      Nombre = Nombre.Substring(0, Nombre.Length - (CantidadDeCortes.ToString()).Length - 1); 
      Nombre = Nombre + "." + ExtraerExtension(Cortes[0]); 
      Nombre = CarpetaDestino + @"\" + Nombre; 

      FileStream Resultado = new FileStream(Nombre, FileMode.Create); 
      foreach (string Corte in Cortes) 
      { 
       FileStream archivoCorte = new FileStream(Corte, FileMode.Open); 
       long Tamano = Corte.Length; 
       byte[] Datos = new byte[Tamano]; 

       archivoCorte.Read(Datos, 0, (int)Tamano); 
       Resultado.Write(Datos, 0,(int)Tamano); 
       archivoCorte.Close(); 
      }     
     } 

Cette méthode est dans une classe statique, et je y accéder par mon Form1, comme ceci:

private void button1_Click(object sender, EventArgs e) 
     { 
      if (folderBrowserDialog1.ShowDialog() == DialogResult.OK) 
      { 
       textBox1.Text = folderBrowserDialog1.SelectedPath; 
      } 
     } 

     private void button2_Click(object sender, EventArgs e) 
     { 
      if (folderBrowserDialog1.ShowDialog() == DialogResult.OK) 
      { 
       textBox2.Text = folderBrowserDialog1.SelectedPath; 
      } 
     } 

     private void button3_Click(object sender, EventArgs e) 
     { 
      string[] Cortes = ColeccionDeCortes(textBox1.Text); 

      try 
      { 
       Archivos.juntarArchivo(Cortes, textBox2.Text); 
       MessageBox.Show("Archivo unido exitosamente."); 
      } 
      catch (Exception X) 
      { 
       MessageBox.Show(X.Message); 
      } 
     } 

     private string[] ColeccionDeCortes(string Path) 
     { 

     } 

Ma méthode juntarArchivo (ce qui signifie JoinFile dans espagnol) reçoit un tableau de chaînes et une chaîne qui est le dossier de destination.

Je suppose que ma question en un mot est dans ma méthode ColeccionDeCortes (string FolderPath), comment puis-je l'obtenir une chaîne [] avec tous les emplacements de fichiers dans la variable FolderPath passé.

Par exemple, si un utilisateur de choisir FolderX, cette méthode devrait retourner l'emplacement de tous les fichiers FolderX À L'INTÉRIEUR D'UN ARRAY (comme une collection de « lieux » pour ainsi dire.

Merci beaucoup pour votre aide. :)

Répondre

4

Je pense que vous cherchez Directory.GetFiles().

+0

Délicieux. J'aime quand les réponses sont courtes et simples à comprendre. .NET me gâte vraiment parfois. :RÉ –