Bonjour à tous, je vais essayer d'être précis, ce que je cherche à faire c'est de récupérer un intervalle de fichier
ce que je souhaite récupérer ce sont les fichiers en rouge hors avec ma méthode actuel je récupère ceux en orange car deux fichier possède la même heure (18h)
voici mon code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67 int bak = 0; int loop = 0; DirectoryInfo directoryInfo = new DirectoryInfo(path); string pattern = @"^AGV_MANAGER_DATA_backup_(?<annee>\d{4})_(?<mois>\d{2})_(?<jour>\d{2})_(?<heures>\d{2})"; do { if (loop == 30) { break; } foreach (FileInfo file in directoryInfo.GetFiles()) { long y = 0; Match m = Regex.Match(file.Name, pattern); if (m.Success) { int annee = int.Parse(m.Groups["annee"].Value); int mois = int.Parse(m.Groups["mois"].Value); int jour = int.Parse(m.Groups["jour"].Value); int heure = int.Parse(m.Groups["heures"].Value); DateTime dateParse = new DateTime(annee, mois, jour, heure, 5, 0); y = DateAndTime.DateDiff(DateInterval.Minute, dateParse, date); } if (y >= 0 && y < 60 && (file.Extension == ".bak" || file.Name.Contains(".bak.zip"))) { cheminFichierOk.Add(txtBBakTrn.Text + @"\" + file.ToString()); bak++; } else if (y >= 0 && y < 60 && (file.Extension == ".trn" || file.Name.Contains(".trn.zip")) && bak == 0) { date = date.AddHours(-1); } else if ((file.Extension == ".trn" || file.Name.Contains(".trn.zip")) && bak == 1) { if (chbTrn.Checked) { cheminFichierOk.Add(txtBBakTrn.Text + @"\" + file.ToString()); } date = date.AddHours(1); } else if ((file.Extension == ".trn" || file.Name.Contains(".trn.zip")) && bak == 1) { if (chbTrn.Checked) { cheminFichierOk.Add(txtBBakTrn.Text + @"\" + file.ToString()); } date = date.AddHours(1); } else if ((file.Extension == ".bak" || file.Name.Contains(".bak.zip")) && bak == 1) { cheminFichierOk.Add(txtBBakTrn.Text + @"\" + file.ToString()); date = date.AddHours(1); bak++; } if (bak == 2 && (file.Extension == ".trn" || file.Name.Contains(".trn.zip"))) { cheminFichierOk.Add(txtBBakTrn.Text + @"\" + file.ToString()); break; } } loop++; } while (bak != 2); return cheminFichierOk;
Partager