Как я могу получить информацию о файле в списке файлов? - PullRequest
0 голосов
/ 13 февраля 2020

Сегодняшняя дилемма состоит в том, что я не могу на всю жизнь понять простой способ записать данные (размер, дату) файла в список. Мне удалось создать список, который обновляется всякий раз, когда вносятся изменения с использованием FileSystemWatcher, отличная рекомендация от другого пользователя. Теперь мне нужно знать, каков размер этих файлов и когда они были созданы / изменены.

Заранее спасибо.

    public partial class Form1 : Form
    {
        public static string serviceName = "Spooler";
        public static string directoryLocation = "C:/Windows/System32/spool/PRINTERS/";
        public static int timeoutMilliseconds;
        FileSystemWatcher watcher;

        public Form1()
        {
            //listBox1.

            InitializeComponent();
            RefreshQueue();
            watch();
        }

        private void watch()
        {
            watcher = new FileSystemWatcher();
            watcher.Path = directoryLocation;
            watcher.NotifyFilter = NotifyFilters.LastWrite & NotifyFilters.LastAccess & NotifyFilters.FileName & NotifyFilters.DirectoryName;
            watcher.Changed += OnChanged;
            watcher.Created += OnChanged;
            watcher.Deleted += OnChanged;
            watcher.Renamed += OnChanged;
            watcher.EnableRaisingEvents = true;
        }

        private void OnChanged(object source, FileSystemEventArgs e)
        {
            RefreshQueue();
        }

     public void PrintQueue()
    {
        listBox1.Items.Clear();
        DirectoryInfo di = new DirectoryInfo(directoryLocation);
        foreach (FileInfo fi in di.GetFiles().OrderByDescending(d => d.LastWriteTime))
        {
            listBox1.Items.Add(directoryLocation + fi);
        }
    }

    public void RefreshQueue()
    {
        PrintQueue();
        label1.Text = listBox1.Items.Count.ToString();
    }        
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...