ListView Dosya Klasör Özelliklerini Listele - CSharp


.

Kod


public static void DosyaKlasorOzellikleriniListele(ListView listView, string tamYol)
{
    listView.Items.Clear();
    listView.Columns.Clear();

    listView.View = View.Details;
    listView.FullRowSelect = true;
    listView.Columns.Add("Özellik", 230);
    listView.Columns.Add("Değer", 500);

    try
    {
        if (File.Exists(tamYol))
        {
            FileInfo fileInfo = new FileInfo(tamYol);

            listView.Items.Add("Name").SubItems.Add(fileInfo.Name);
            listView.Items.Add("Directory Name").SubItems.Add(fileInfo.DirectoryName);
            listView.Items.Add("Full Name").SubItems.Add(fileInfo.FullName);
            listView.Items.Add("Extension").SubItems.Add(Path.GetExtension(tamYol));
            //lvw.Items.Add("Directory").SubItems.Add(fi.Directory.ToString());
            listView.Items.Add("Is Read Only").SubItems.Add(fileInfo.IsReadOnly.ToString());
            listView.Items.Add("Length").SubItems.Add(fileInfo.Length.ToString());
            listView.Items.Add("Creation Time").SubItems.Add(fileInfo.CreationTime.ToString());
            listView.Items.Add("Last Access Time").SubItems.Add(fileInfo.LastAccessTime.ToString());
            listView.Items.Add("Last Write Time").SubItems.Add(fileInfo.LastWriteTime.ToString());
            //lvw.Items.Add("Geçen Süre (Creation Time)").SubItems.Add(IkiTarihFarki(DateTime.Now, fi.CreationTime));
            //lvw.Items.Add("Geçen Süre (Last Access Time)").SubItems.Add(IkiTarihFarki(DateTime.Now, fi.LastAccessTime));
            //lvw.Items.Add("Geçen Süre (Last Write Time)").SubItems.Add(IkiTarihFarki(DateTime.Now, fi.LastWriteTime));
            //lvw.Items.Add("Geçen Süre 2 (Last Access Time)").SubItems.Add(FmIslem.GecenSureHesabi(fi.LastAccessTime));
            listView.Items.Add("Geçen Süre (Creation Time)").SubItems.Add(TarihSaatIslem.GecenSureyiHesapla(fileInfo.CreationTime));
            listView.Items.Add("Geçen Süre (Last Access Time)").SubItems.Add(TarihSaatIslem.GecenSureyiHesapla(fileInfo.LastAccessTime));
            listView.Items.Add("Geçen Süre (Last Write Time)").SubItems.Add(TarihSaatIslem.GecenSureyiHesapla(fileInfo.LastWriteTime));
        }
        else if (Directory.Exists(tamYol))
        {
            DirectoryInfo directoryInfo = new DirectoryInfo(tamYol);
            DriveInfo driveInfo = new DriveInfo(tamYol);

            listView.Items.Add("Name").SubItems.Add(directoryInfo.Name);

            //--------------------------------------------------
            //Eğer tam yol direkt sürücünün yoluysa bir üst
            //klasör bilgisini almaya çalışmak null hata
            //vermesine sebep oluyordu. Bu yüzden bu 
            //parametre koşul eklenerek verildi.
            //--------------------------------------------------
            if (directoryInfo.FullName != driveInfo.Name)
            {
                listView.Items.Add("Parent").SubItems.Add(directoryInfo.Parent.ToString());
            }
            else
            {
                listView.Items.Add("Parent").SubItems.Add("#YOK");
            }

            listView.Items.Add("Name").SubItems.Add(Path.GetFileName(tamYol));
            listView.Items.Add("Full Name").SubItems.Add(directoryInfo.FullName);
            listView.Items.Add("Root").SubItems.Add(directoryInfo.Root.ToString());
            listView.Items.Add("Creation Time").SubItems.Add(directoryInfo.CreationTime.ToString());
            listView.Items.Add("Last Access Time").SubItems.Add(directoryInfo.LastAccessTime.ToString());
            listView.Items.Add("Last Write Time").SubItems.Add(directoryInfo.LastWriteTime.ToString());
            //lvw.Items.Add("Geçen Süre (Creation Time)").SubItems.Add(IkiTarihFarki(DateTime.Now, di.CreationTime));
            //lvw.Items.Add("Geçen Süre (Last Access Time)").SubItems.Add(IkiTarihFarki(DateTime.Now, di.LastAccessTime));
            //lvw.Items.Add("Geçen Süre (Last Write Time)").SubItems.Add(IkiTarihFarki(DateTime.Now, di.LastWriteTime));
            listView.Items.Add("Geçen Süre (Creation Time)").SubItems.Add(TarihSaatIslem.GecenSureyiHesapla(directoryInfo.CreationTime));
            listView.Items.Add("Geçen Süre (Last Access Time)").SubItems.Add(TarihSaatIslem.GecenSureyiHesapla(directoryInfo.LastAccessTime));
            listView.Items.Add("Geçen Süre (Last Write Time)").SubItems.Add(TarihSaatIslem.GecenSureyiHesapla(directoryInfo.LastWriteTime));
        }

        listView.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent);
        ListViewVs.SonSutunuYenidenBoyutlandir(listView);
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message, "DosyaKlasorOzellikleriniListele");
    }
}

Etiketler
csharp