Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.IO;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace Algo_MWiniarek
- {
- class K3_Z1
- {
- //Znaleźć 10 największych plików w wybranym katalogu (uwzględniając podkatalogi wgłąb). Wypisać je w postaci Nazwa Pliku,
- //Rozmiar w kolejności malejących rozmiarów.
- private static Dictionary<FileInfo, long> lista = new Dictionary<FileInfo, long>();
- public static void Zadanie()
- {
- Console.WriteLine("Zadanie 1");
- string sciezka = @"C:\Program Files\Common Files";
- DirectoryInfo glownyFolder = new DirectoryInfo(sciezka);
- lista.Clear();
- SprawdzFolder(glownyFolder);
- lista = lista.OrderByDescending(x => x.Value).Take(10).ToDictionary(x => x.Key, x => x.Value);
- for (int i = 0; i < lista.Count; i++)
- {
- Console.WriteLine($"{lista.ElementAt(i).Key.Name} - {lista.ElementAt(i).Value} bytes");
- }
- }
- private static void SprawdzFolder(DirectoryInfo folder)
- {
- FileInfo[] pliki = folder.GetFiles("*.*");
- for (int i = 0; i < pliki.Length; i++)
- {
- lista.Add(pliki[i], pliki[i].Length);
- }
- DirectoryInfo[] foldery = folder.GetDirectories();
- for (int i = 0; i < foldery.Length; i++)
- {
- SprawdzFolder(foldery[i]);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement