Ajouter un commentaire

molo2003
Erreur de syntaxe ????

Bonjour les experts,

J'ai déjà ,il y a quelques années programmer léger en Visual C++ Version 6 (avec MFC). Je viens d'acheter Microsoft Visual Studio 2005 Standard et je me suis remis à la programmation basique en C++ .
Voici mon problème:

Dans mon programme, j'ai établi un « Array de FileSystemInfo » par la Classe DirectoryInfo au moyen du membre GetFileSystemInfos.Je récupère ainsi la liste des fichiers et sous répertoire de mon repertoire origine(String^ origine). Cele marche très bien puisque je peux lire la liste exacte du chemin complet de ceux ci par le premier « Console::WriteLine(« Repertoire ..... ».
Mais mon problème provient a la suite: pour chaque élement du « Array  ^FileSystemInfo^ », je veux tester si c'est un répertoire ou un fichier. Je veux utiliser la propriété « Attributes.Get() » pour tester , dans le « FileAttributes » donné,si le membre « Directory » est présent ou absent . Je saurais affirmer si l'élément est un répertoire ou pas.

Et c'est dans cette ligne du if((File::GetAttributes( .... que ce produit l'erreur ci dessous:
« Erreur 1 error C3063: opérateur '&' : tous les opérandes doivent avoir le même type énumération »

Je veux absolument utiliser la Classe FileSystemInfo et ses membres. Dans la documentation, on parle de pouvoir « caster » les éléments de FileSystemInfo en elements de File.... mais je ne sais pas faire.
Je vous soumets une petite parti du code source

Code source:

DirectoryInfo^ dirinfo = gcnew DirectoryInfo(origine); // origine

array^ reper = dirinfo -> GetFileSystemInfos ();

for(int i=0; i < reper->Length; i++) //liste des fich et sous-dir du rep_ori
{ String^ fich_ou_dir = gcnew String((reper[i]->FullName)->ToString());
Console::WriteLine("Repertoire_{0}: {1}", i, fich_ou_dir);

if ((File::GetAttributes( fich_ou_dir )) & FileAttributes::Directory == FileAttributes::Directory )
{ Console::WriteLine("\n\n OUIIIIIIIII c'est un directory");
}

}

Voilà, si quelqu'un connait la syntaxe exacte pour obtenir mon résultat, je suis prenneur.

Autre petite question banale: quelle syntaxe pour convertir un int en String^ ???

Grand merci d'avance à ceux qui voudront m'aider.

Filtered HTML

Plain text

CAPTCHA
Cette question permet de vérifier que vous n'êtes pas un robot spammeur :-)
 M   M  EEEE  FFFF   CCC  III 
MM MM E F C I
M M M EEE FFF C I
M M E F C I
M M EEEE F CCC III