Sto utilizzando Directory.GetFiles()
per elencare i file in base al modello specificato. Questo funziona bene per la maggior parte dei modelli che sto cercando (ad esempio zip, rar, sfv).Il modello di Directory.GetFiles() corrisponde a C#
Ecco come preparare l'elenco (più o meno). Il problema è con il modello dei numeri da .001 a .999 che voglio elencare.
alArrayPatternText.Add("*.zip");
alArrayPatternText.Add("*.sfv");
alArrayPatternText.Add("*.r??");
alArrayPatternText.Add("*.001");
for (int i = 2; i <= 999; i++)
{
string findNumber = String.Format("{0:000}", i);
alArrayPatternText.Add("*." + findNumber);
}
Ho poi chiamo
string[] files = Directory.GetFiles(strDirName, varPattern);
per ogni modello in Array che sembra pessima idea di farlo dal momento che la lista ha 1002 voci e controllando se directory è ognuno di loro è solo un po ' troppo tempo.
Ci sarebbe un modo migliore per farlo?
Grazie, che dovrebbe farlo :-) – MadBoy
Hrmms, sembra che ci sia qualcosa sbagliato, il 000-999 non viene convertito bene. Mostra oltre 1.000 2.000 ecc. E anche la directory ha file zip e 001 non restituisce nulla per i file ..:/ – MadBoy
Probabilmente un problema di formato stringa. Prova a sostituire: i => i.ToString (".000") con: i => "." + i –