31/08/21 15:22
fosforo
Ciao
Sembra banale ma non riesco a trovare dei file in una Directory.
Nella directory ci sono file con questa nomenclatura:
Pippo.xml_ERROR
Pluto.xml_ERROR
etc
etc
Ce ne sono 1064 in tutto.
Uso:
foreach (string dirFile in Directory.GetFiles(PathXML, "*.xml_ERROR", SearchOption.TopDirectoryOnly).Select(Path.GetFileName).ToArray());
ma trovo solo 14 file.
Ho fatto vari tentativi ma non ne vengo a capo.
Grazie anticipatamente.
aaa
31/08/21 18:42
Carlo
così?:
string[] cartella; // array che conterrà i nomi dei files con percorso completo
cartella = System.IO.Directory.GetFiles(PathXML, "*.xml_ERROR");
// Non so poi come devi visualizzare i file, per esempio in tre listbox
// tutti i file completi di percorso ed estensione
listBox1.Items.AddRange(cartella);
for (int i = 0; i < cartella.Length; i++)
{
// tutti i nomi dei file con estensione
listBox2.Items.Add(System.IO.Path.GetFileName(cartella[i]));
// tutti i nomi dei file senza estensione
listBox3.Items.Add(System.IO.Path.GetFileNameWithoutExtension(cartella[i]));
}
oppure più simile a come volevi fare tu:
foreach (string dirFile in System.IO.Directory.GetFiles(PathXML, "*.xml_ERROR"))
{
// tutti i nomi dei file con estensione
listBox1.Items.Add(System.IO.Path.GetFileName(dirFile));
}
Ultima modifica effettuata da Carlo 31/08/21 20:27
in programmazione tutto è permesso
01/09/21 7:41
fosforo
Ciao Carlo
Grazie per l'aiuto.
Purtroppo mi da sempre solo 12 file trovati su 1064.
Prorpio non capisco.
Se invece di .*.xml_ERROR uso .XML oppure .XML_OK il risultato è corretto.
aaa
01/09/21 9:24
nessuno
Sicuro che i file abbiano tutti quella estensione? Forse pensi sia così ma c'è qualche carattere che non vedi in più.
Sicuro che c'è un solo _ oppure in alcuni ce ne sono due __
?
Apri una finestra DOS e usa il DIR per controllo
Ultima modifica effettuata da nessuno 01/09/21 9:26
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
01/09/21 9:27
Carlo
Oltre al controllo che ti ha consigliato nessuno, controlla lettera per lettera, con meticolosa attenzione il contenuto di: PathXML
Mi viene da pensare che cerchi i files in un'altra caretella con nome uguale ma percorso leggermente diverso.
Ultima modifica effettuata da Carlo 01/09/21 9:29
in programmazione tutto è permesso
01/09/21 13:46
Carlo
Mi vengono delle idee ma sono talmente strampalate che te le risparmio
Visto che hai detto che funziona, ho riguardato il tuo codice:
foreach (string dirFile in Directory.GetFiles(PathXML, "*.xml_ERROR", SearchOption.TopDirectoryOnly).Select(Path.GetFileName).ToArray());
come recuperi l'elenco dei files trovati?
in programmazione tutto è permesso
01/09/21 18:39
fosforo
Metto tutto in una List e poi, visualizzo tutto con un datagridview.
aaa