/ / dostať prvý súbor z adresára robiť pokyny a urobiť to isté pre ďalšie c # - c #, slučky, adresár

dostať prvý súbor z adresára do pokynov a urobiť to isté pre ďalšiu c # - c #, slučky, adresár

Chcem urobiť nejaké inštrukcie o niektorých súborochnachádza v priečinku. Takže teraz všetko, čo teraz môžem urobiť, je urobiť to na prvom súbore, a chcem pridať možnosť urobiť rovnaké pokyny pre ďalší súbor po dokončení.

Tu je kód I "m pomocou získať prvý súbor

   var imgPath = Directory.GetFiles(Server.MapPath("~/Folder_fact"), "*.pdf").First();
//instructions here
// i want to add here the function to move to the next file

odpovede:

1 pre odpoveď č. 1

Directory.GetFiles vráti všetky súbory so zadaným vzorom, ale s vaším First zavolajte, potom dostanete iba prvú. Odstráňte First a potom slučky nad výsledkami

Avšak, ako je to v prípade MSDN, je lepšie používať EnumerateFiles aby sa zabránilo načítaniu všetkých informácií pred začatím enumerácie.

Metódy EnumerateFiles a GetFiles sa líšia akotakto: Keď použite EnumerateFiles, môžete začať výčet kolekcia mien pred vrátením celej zbierky; keď používate GetFiles, vy musíte čakať na celý rad mien, ktoré majú byť vrátené, ako budete môcť prístup do poľa. Preto, keď pracujete s mnohými súbormi a EnumerateFiles môžu byť efektívnejšie.

foreach(var file in Directory.EnumerateFiles(Server.MapPath("~/Folder_fact"), "*.pdf"))
{
// here the variable file is the full pathname to your PDF file....
}

0 pre odpoveď č. 2

Čo takto:

DirectoryInfo DirInfo = new DirectoryInfo(Server.MapPath("~/Folder_fact"));

var files= from f in DirInfo.EnumerateFiles()
where f.Extension == ".pdf"
select f.FullName;

foreach(var file in files)
{
// do something
}