J'ai un listView, un openFileDialog et j'aimerai récupérér plusieur fichiers dans cette listView donc je met l'openFileDialog en multiselect = true
Ensuite j'aime ce code sur un bouton qui ouvre l'openFileDialog :
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
string[] files = openFileDialog.FileNames;
FileInfo file = new FileInfo(openFileDialog.FileName);
ListViewItem item = new ListViewItem(file.Name);
item.SubItems.Add(file.Length.ToString());
listView.Items.Add(item);
}
Mais le problème est que je récupère seulement le dernier fichier séléctionné dans la boite de dialogue, et si je n'utilise pas FileInfo je crois je ne pourrais pas récupérer les informations voulu et si je n'utilise pas listViewItem je ne pourrais pas faire le contenu dans différentes colonnes...
Merci d'avance
PS : pouvais vous m'indiquer des indications pour récupérer les tag des mp3 ?
et comment convertir la taille des fichier ouvert qui sont en octets en Ko ?
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
string[] files = openFileDialog.FileNames; // la tu récupère tous les noms de fichier dans un tableau
foreach(string file in files) // tu parcoure 1 à 1 les fichiers trouvés
{
FileInfo fi = new FileInfo(file);
ListViewItem item = new ListViewItem(fi.Name);
double size = fi.Length / 1024;
item.SubItems.Add(size.ToString()); // il faut un string en paramètre
listView.Items.Add(item);
}
}
Normalement ça marche.
"Une chose me laisse perplexe : Est-ce moi ou les autres qui sont fous ?" A. Einstein
<!--
La page de la doc de la propriété Multiselect l'indique :
"Utilisez la propriété FileNames pour accéder à la liste complète des noms de fichiers sélectionnés."
FileInfo file = new FileInfo(openFileDialog.FileNames);
=> Normal, aucune surchagre de FileInfo ne prend en paramètre un tableau de chaine représentant les chemins d'accès à plusieurs fichiers.
FileNames FileInfo, constructeurs
Tu devrais vraiment "perdre" quelques minutes à lire les documentations des éléments que tu utilises, ça t'évitera de perdre du temps sur des problèmes qui n'en sont pas.