2010-10-15 5 views
2

J'utilise Managed C++.
Je dois extraire le répertoire parent après OpenFileDialog renvoie le chemin d'accès au fichier String ^.Récupère le répertoire parent du fichier sous forme de chaîne C++

System::String^ filestring = openFileDialog1->FileName; 

La méthode utilisée par Microsoft est Directory::GetParent mais cela doit être enregistré

System::IO::DirectoryInfo^ WhyIsThisNotAString = Directory::GetParent(filestring) 

Je dois convertir en quelque sorte DirectoryInfo^-String^.

J'ai aussi essayé après OpenFileDialog est appelé, mais il ne fonctionne pas:

String^ CurrDir = Directory::GetCurrentDirectory(); 

Ou s'il y a une meilleure façon d'extraire le répertoire parent, ce serait génial.

Répondre

2

Vous pouvez utiliser la propriété FullName:

System::String^ directoryFullName=Directory::GetParent(filestring)->FullName; 
2

Avez-vous regardé the documentation?

La classe DirectoryInfo possède une propriété FullName avec la description suivante:

Obtient le chemin complet du répertoire ou un fichier.

+0

J'ai été RTFM, pendant environ 20 minutes, mais la recherche dans les références msdn peut prendre un peu de temps. Le but de ce site est d'AIDER les personnes qui ne sont pas aussi bien informées. Ne pas être une piqûre condescendante. –

+0

En fait, MSDN est une * référence *: il est conçu pour vous aider lorsque vous savez déjà où trouver ce que vous cherchez. Si vous ne vous sentez pas assez bien informé, vous devriez sortir et acheter un livre sur .NET qui a une vue plus large et qui pointe vers différentes classes. Ces deux et Google sont trois vues complémentaires de la même information. –

Questions connexes