Repertoire parent d'un fichier
bonjour à tous,
je présente mon problème
j'ai des fichiers stocker dans un répertoire avec des sous repertoires
Directory
-sDirectory
--ssDirectory
---fichier1
---fichier2
ce qui donne pour le full path du fichier1: "C:\Directory\sDirectory\ssDirectory\fichier1" de même que pour le fichier2
je souhaite extraire les infos suivantes du fullpath:
p1="Directeory"
p2="sDirectory"
p3="ssDirectory"
p4="fichier1"
etc.
Mon problème c'est que mon code me ramène:
p1="C:\Directeory"
p2="C:\Directory\sDirectory"
p3="C:\Directory\sDirectory\ssDirectory"
p4="C:\Directory\sDirectory\ssDirectory\fichier1"
voilà mon code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
|
private void rechercheDossier(string rep) {
string[] fichiers,repertoires;
string CodeImage = null, p1= null, p2= null, p3= null, p4= null;
//int i, j;
int col, lign;
try
{
fichiers = System.IO.Directory.GetFiles(rep);
repertoires = System.IO.Directory.GetDirectories(rep);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
return;
}
foreach (string fichier in fichiers) {
System.IO.FileInfo fInfo = new System.IO.FileInfo(fichier);
}
foreach (string repertoire in repertoires) {
rechercheDossier(repertoire);
}
// Ajout des fichiers dans une listebox
foreach (string fichier in fichiers) {
p1= folderFromFileName(folderFromFileName(folderFromFileName(fichier)));
p2= folderFromFileName(folderFromFileName(fichier));
p3= folderFromFileName(fichier);
p4= nameOnlyFromFullPath(fichier);
lbFichiers.Items.Add(p1+ " -" + p2+" -" + p3+" -" + p4 );
}
}
private string nameOnlyFromFullPath(string FileFullPath)
{
int intPos=0;
string strSep = "\\";
char[] any_Of = strSep.ToCharArray();
intPos=FileFullPath.LastIndexOfAny(any_Of);
intPos += 1;
return FileFullPath.Substring(intPos,(Strings.Len(FileFullPath) - intPos));
}
private string dirParentFromFullPath(string fileFullPath) {
int intPos = 1;
string strSep = "\\";
char[] any_Of = strSep.ToCharArray();
intPos += 1;
intPos = fileFullPath.LastIndexOfAny(any_Of);
return fileFullPath.Substring(intPos, (Strings.Len(fileFullPath) - intPos));
} |
Merci d'avance!